aboutsummaryrefslogtreecommitdiffstats
path: root/_pytest/test_unfurl.py
diff options
context:
space:
mode:
Diffstat (limited to '_pytest/test_unfurl.py')
-rw-r--r--_pytest/test_unfurl.py325
1 files changed, 166 insertions, 159 deletions
diff --git a/_pytest/test_unfurl.py b/_pytest/test_unfurl.py
index eb8fe27..e8043a8 100644
--- a/_pytest/test_unfurl.py
+++ b/_pytest/test_unfurl.py
@@ -6,166 +6,173 @@ import time
import wee_slack
import os
-os.environ['TZ'] = 'UTC'
+os.environ["TZ"] = "UTC"
-@pytest.mark.parametrize('case', (
- {
- 'input': "foo",
- 'output': "foo",
- },
- {
- 'input': "<!channel>",
- 'output': "@channel",
- },
- {
- 'input': "<!everyone>",
- 'output': "@everyone",
- },
- {
- 'input': "<!group>",
- 'output': "@group",
- },
- {
- 'input': "<!here>",
- 'output': "@here",
- },
- {
- 'input': "<@U407ABLLW|@othernick>: foo",
- 'output': "@alice: foo",
- },
- {
- 'input': "<@UNKNOWN|@othernick>: foo",
- 'output': "@othernick: foo",
- },
- {
- 'input': "foo <#C407ABS94|otherchannel> foo",
- 'output': "foo #general foo",
- },
- {
- 'input': "foo <#UNKNOWN|otherchannel> foo",
- 'output': "foo #otherchannel foo",
- },
- {
- 'input': "url: <https://example.com|fallback> suffix",
- 'output': "url: https://example.com suffix",
- 'ignore_alt_text': True,
- },
- {
- 'input': "url: <https://example.com|example> suffix",
- 'output': "url: https://example.com (example) suffix",
- 'auto_link_display': 'both',
- },
- {
- 'input': "url: <https://example.com|example with spaces> suffix",
- 'output': "url: https://example.com (example with spaces) suffix",
- 'auto_link_display': 'both',
- },
- {
- 'input': "url: <https://example.com|example.com> suffix",
- 'output': "url: https://example.com (example.com) suffix",
- 'auto_link_display': 'both',
- },
- {
- 'input': "url: <mailto:name@example.com|name@example.com> suffix",
- 'output': "url: mailto:name@example.com (name@example.com) suffix",
- 'auto_link_display': 'both',
- },
- {
- 'input': "url: <https://example.com|example.com> suffix",
- 'output': "url: example.com suffix",
- 'auto_link_display': 'text',
- },
- {
- 'input': "url: <https://example.com|different text> suffix",
- 'output': "url: https://example.com (different text) suffix",
- 'auto_link_display': 'text',
- },
- {
- 'input': "url: <mailto:name@example.com|name@example.com> suffix",
- 'output': "url: name@example.com suffix",
- 'auto_link_display': 'text',
- },
- {
- 'input': "url: <https://example.com|different text> suffix",
- 'output': "url: https://example.com (different text) suffix",
- 'auto_link_display': 'url',
- },
- {
- 'input': "url: <https://example.com|example.com> suffix",
- 'output': "url: https://example.com suffix",
- 'auto_link_display': 'url',
- },
- {
- 'input': "url: <mailto:name@example.com|name@example.com> suffix",
- 'output': "url: mailto:name@example.com suffix",
- 'auto_link_display': 'url',
- },
- {
- 'input': "<@U407ABLLW> multiple unfurl <https://example.com|example with spaces>",
- 'output': "@alice multiple unfurl https://example.com (example with spaces)",
- 'auto_link_display': 'both',
- },
- {
- 'input': "url with equal fallback: <https://example.com|https://example.com> suffix",
- 'output': "url with equal fallback: https://example.com suffix",
- 'auto_link_display': 'both',
- },
- {
- 'input': "try the #general channel",
- 'output': "try the #general channel",
- },
- {
- 'input': "<@U407ABLLW> I think 3 > 2",
- 'output': "@alice I think 3 > 2",
- },
- {
- 'input': "<!subteam^TGX0ALBK3|@othersubteam> This is announcement for the dev team",
- 'output': "@test This is announcement for the dev team"
- },
- {
- 'input': "<!subteam^UNKNOWN|@othersubteam> This is announcement for the dev team",
- 'output': "@othersubteam This is announcement for the dev team"
- },
- {
- 'input': "Ends <!date^1577880000^{date_num} - {date} - {date_short} - {date_long}|Jan 01, 2020>.",
- 'output': "Ends 2020-01-01 - January 01, 2020 - Jan 01, 2020 - Wednesday, January 01, 2020."
- },
- {
- 'input': "Ends <!date^1577880000^{time} - {time_secs}|12:00 PM>.",
- 'output': "Ends 12:00 - 12:00:00."
- },
- {
- 'input': "Ends <!date^1577880000^{date_num} {invalid_token}>.",
- 'output': "Ends 2020-01-01 {invalid_token}."
- },
- {
- 'input': "Ends <!date^1577880000^{date_num}^http://github.com>.",
- 'output': "Ends 2020-01-01 (http://github.com)."
- },
- {
- 'input': "Ends <!date^{}^{{date_pretty}} - {{date_short_pretty}} - {{date_long_pretty}}>.".format(
- int(time.mktime(datetime.today().timetuple()))),
- 'output': "Ends today - today - today."
- },
- {
- 'input': "Ends <!date^{}^{{date_pretty}} - {{date_short_pretty}} - {{date_long_pretty}}>.".format(
- int(time.mktime((datetime.today() - timedelta(days=1)).timetuple()))),
- 'output': "Ends yesterday - yesterday - yesterday."
- },
- {
- 'input': "Ends <!date^{}^{{date_pretty}} - {{date_short_pretty}} - {{date_long_pretty}}>.".format(
- int(time.mktime((datetime.today() + timedelta(days=1)).timetuple()))),
- 'output': "Ends tomorrow - tomorrow - tomorrow."
- },
- {
- 'input': "Ends <!date^1577880000^{date_pretty} - {date_short_pretty} - {date_long_pretty}>.",
- 'output': "Ends January 01, 2020 - Jan 01, 2020 - Wednesday, January 01, 2020."
- }
-))
+
+@pytest.mark.parametrize(
+ "case",
+ (
+ {
+ "input": "foo",
+ "output": "foo",
+ },
+ {
+ "input": "<!channel>",
+ "output": "@channel",
+ },
+ {
+ "input": "<!everyone>",
+ "output": "@everyone",
+ },
+ {
+ "input": "<!group>",
+ "output": "@group",
+ },
+ {
+ "input": "<!here>",
+ "output": "@here",
+ },
+ {
+ "input": "<@U407ABLLW|@othernick>: foo",
+ "output": "@alice: foo",
+ },
+ {
+ "input": "<@UNKNOWN|@othernick>: foo",
+ "output": "@othernick: foo",
+ },
+ {
+ "input": "foo <#C407ABS94|otherchannel> foo",
+ "output": "foo #general foo",
+ },
+ {
+ "input": "foo <#UNKNOWN|otherchannel> foo",
+ "output": "foo #otherchannel foo",
+ },
+ {
+ "input": "url: <https://example.com|fallback> suffix",
+ "output": "url: https://example.com suffix",
+ "ignore_alt_text": True,
+ },
+ {
+ "input": "url: <https://example.com|example> suffix",
+ "output": "url: https://example.com (example) suffix",
+ "auto_link_display": "both",
+ },
+ {
+ "input": "url: <https://example.com|example with spaces> suffix",
+ "output": "url: https://example.com (example with spaces) suffix",
+ "auto_link_display": "both",
+ },
+ {
+ "input": "url: <https://example.com|example.com> suffix",
+ "output": "url: https://example.com (example.com) suffix",
+ "auto_link_display": "both",
+ },
+ {
+ "input": "url: <mailto:name@example.com|name@example.com> suffix",
+ "output": "url: mailto:name@example.com (name@example.com) suffix",
+ "auto_link_display": "both",
+ },
+ {
+ "input": "url: <https://example.com|example.com> suffix",
+ "output": "url: example.com suffix",
+ "auto_link_display": "text",
+ },
+ {
+ "input": "url: <https://example.com|different text> suffix",
+ "output": "url: https://example.com (different text) suffix",
+ "auto_link_display": "text",
+ },
+ {
+ "input": "url: <mailto:name@example.com|name@example.com> suffix",
+ "output": "url: name@example.com suffix",
+ "auto_link_display": "text",
+ },
+ {
+ "input": "url: <https://example.com|different text> suffix",
+ "output": "url: https://example.com (different text) suffix",
+ "auto_link_display": "url",
+ },
+ {
+ "input": "url: <https://example.com|example.com> suffix",
+ "output": "url: https://example.com suffix",
+ "auto_link_display": "url",
+ },
+ {
+ "input": "url: <mailto:name@example.com|name@example.com> suffix",
+ "output": "url: mailto:name@example.com suffix",
+ "auto_link_display": "url",
+ },
+ {
+ "input": "<@U407ABLLW> multiple unfurl <https://example.com|example with spaces>",
+ "output": "@alice multiple unfurl https://example.com (example with spaces)",
+ "auto_link_display": "both",
+ },
+ {
+ "input": "url with equal fallback: <https://example.com|https://example.com> suffix",
+ "output": "url with equal fallback: https://example.com suffix",
+ "auto_link_display": "both",
+ },
+ {
+ "input": "try the #general channel",
+ "output": "try the #general channel",
+ },
+ {
+ "input": "<@U407ABLLW> I think 3 > 2",
+ "output": "@alice I think 3 > 2",
+ },
+ {
+ "input": "<!subteam^TGX0ALBK3|@othersubteam> This is announcement for the dev team",
+ "output": "@test This is announcement for the dev team",
+ },
+ {
+ "input": "<!subteam^UNKNOWN|@othersubteam> This is announcement for the dev team",
+ "output": "@othersubteam This is announcement for the dev team",
+ },
+ {
+ "input": "Ends <!date^1577880000^{date_num} - {date} - {date_short} - {date_long}|Jan 01, 2020>.",
+ "output": "Ends 2020-01-01 - January 01, 2020 - Jan 01, 2020 - Wednesday, January 01, 2020.",
+ },
+ {
+ "input": "Ends <!date^1577880000^{time} - {time_secs}|12:00 PM>.",
+ "output": "Ends 12:00 - 12:00:00.",
+ },
+ {
+ "input": "Ends <!date^1577880000^{date_num} {invalid_token}>.",
+ "output": "Ends 2020-01-01 {invalid_token}.",
+ },
+ {
+ "input": "Ends <!date^1577880000^{date_num}^http://github.com>.",
+ "output": "Ends 2020-01-01 (http://github.com).",
+ },
+ {
+ "input": "Ends <!date^{}^{{date_pretty}} - {{date_short_pretty}} - {{date_long_pretty}}>.".format(
+ int(time.mktime(datetime.today().timetuple()))
+ ),
+ "output": "Ends today - today - today.",
+ },
+ {
+ "input": "Ends <!date^{}^{{date_pretty}} - {{date_short_pretty}} - {{date_long_pretty}}>.".format(
+ int(time.mktime((datetime.today() - timedelta(days=1)).timetuple()))
+ ),
+ "output": "Ends yesterday - yesterday - yesterday.",
+ },
+ {
+ "input": "Ends <!date^{}^{{date_pretty}} - {{date_short_pretty}} - {{date_long_pretty}}>.".format(
+ int(time.mktime((datetime.today() + timedelta(days=1)).timetuple()))
+ ),
+ "output": "Ends tomorrow - tomorrow - tomorrow.",
+ },
+ {
+ "input": "Ends <!date^1577880000^{date_pretty} - {date_short_pretty} - {date_long_pretty}>.",
+ "output": "Ends January 01, 2020 - Jan 01, 2020 - Wednesday, January 01, 2020.",
+ },
+ ),
+)
def test_unfurl_refs(case, realish_eventrouter):
wee_slack.EVENTROUTER = realish_eventrouter
- wee_slack.config.unfurl_ignore_alt_text = case.get('ignore_alt_text')
- wee_slack.config.unfurl_auto_link_display = case.get('auto_link_display')
+ wee_slack.config.unfurl_ignore_alt_text = case.get("ignore_alt_text")
+ wee_slack.config.unfurl_auto_link_display = case.get("auto_link_display")
- result = wee_slack.unfurl_refs(case['input'])
- assert result == case['output']
+ result = wee_slack.unfurl_refs(case["input"])
+ assert result == case["output"]