mirror of https://github.com/caronc/apprise
test coverage added
parent
986a19d542
commit
62dd5bab5c
|
@ -83,22 +83,46 @@ def test_pushover_attachments(mock_post, tmpdir):
|
||||||
assert mock_post.call_args_list[0][0][0] == \
|
assert mock_post.call_args_list[0][0][0] == \
|
||||||
'https://api.pushover.net/1/messages.json'
|
'https://api.pushover.net/1/messages.json'
|
||||||
|
|
||||||
|
# Reset our mock object for multiple tests
|
||||||
|
mock_post.reset_mock()
|
||||||
|
|
||||||
# Test multiple attachments
|
# Test multiple attachments
|
||||||
assert attach.add(os.path.join(TEST_VAR_DIR, 'apprise-test.gif'))
|
assert attach.add(os.path.join(TEST_VAR_DIR, 'apprise-test.gif'))
|
||||||
assert obj.notify(body="test", attach=attach) is True
|
assert obj.notify(body="test", attach=attach) is True
|
||||||
|
|
||||||
|
# Test our call count
|
||||||
|
assert mock_post.call_count == 2
|
||||||
|
assert mock_post.call_args_list[0][0][0] == \
|
||||||
|
'https://api.pushover.net/1/messages.json'
|
||||||
|
assert mock_post.call_args_list[1][0][0] == \
|
||||||
|
'https://api.pushover.net/1/messages.json'
|
||||||
|
|
||||||
|
# Reset our mock object for multiple tests
|
||||||
|
mock_post.reset_mock()
|
||||||
|
|
||||||
image = tmpdir.mkdir("pover_image").join("test.jpg")
|
image = tmpdir.mkdir("pover_image").join("test.jpg")
|
||||||
image.write('a' * plugins.NotifyPushover.attach_max_size_bytes)
|
image.write('a' * plugins.NotifyPushover.attach_max_size_bytes)
|
||||||
|
|
||||||
attach = AppriseAttachment.instantiate(str(image))
|
attach = AppriseAttachment.instantiate(str(image))
|
||||||
assert obj.notify(body="test", attach=attach) is True
|
assert obj.notify(body="test", attach=attach) is True
|
||||||
|
|
||||||
|
# Test our call count
|
||||||
|
assert mock_post.call_count == 1
|
||||||
|
assert mock_post.call_args_list[0][0][0] == \
|
||||||
|
'https://api.pushover.net/1/messages.json'
|
||||||
|
|
||||||
|
# Reset our mock object for multiple tests
|
||||||
|
mock_post.reset_mock()
|
||||||
|
|
||||||
# Add 1 more byte to the file (putting it over the limit)
|
# Add 1 more byte to the file (putting it over the limit)
|
||||||
image.write('a' * (plugins.NotifyPushover.attach_max_size_bytes + 1))
|
image.write('a' * (plugins.NotifyPushover.attach_max_size_bytes + 1))
|
||||||
|
|
||||||
attach = AppriseAttachment.instantiate(str(image))
|
attach = AppriseAttachment.instantiate(str(image))
|
||||||
assert obj.notify(body="test", attach=attach) is False
|
assert obj.notify(body="test", attach=attach) is False
|
||||||
|
|
||||||
|
# Test our call count
|
||||||
|
assert mock_post.call_count == 0
|
||||||
|
|
||||||
# Test case when file is missing
|
# Test case when file is missing
|
||||||
attach = AppriseAttachment.instantiate(
|
attach = AppriseAttachment.instantiate(
|
||||||
'file://{}?cache=False'.format(str(image)))
|
'file://{}?cache=False'.format(str(image)))
|
||||||
|
@ -106,6 +130,9 @@ def test_pushover_attachments(mock_post, tmpdir):
|
||||||
assert obj.notify(
|
assert obj.notify(
|
||||||
body='body', title='title', attach=attach) is False
|
body='body', title='title', attach=attach) is False
|
||||||
|
|
||||||
|
# Test our call count
|
||||||
|
assert mock_post.call_count == 0
|
||||||
|
|
||||||
# Test unsuported files:
|
# Test unsuported files:
|
||||||
image = tmpdir.mkdir("pover_unsupported").join("test.doc")
|
image = tmpdir.mkdir("pover_unsupported").join("test.doc")
|
||||||
image.write('a' * 256)
|
image.write('a' * 256)
|
||||||
|
@ -119,7 +146,10 @@ def test_pushover_attachments(mock_post, tmpdir):
|
||||||
|
|
||||||
# Throw an exception on the first call to requests.post()
|
# Throw an exception on the first call to requests.post()
|
||||||
for side_effect in (requests.RequestException(), OSError(), bad_response):
|
for side_effect in (requests.RequestException(), OSError(), bad_response):
|
||||||
mock_post.side_effect = [side_effect]
|
mock_post.side_effect = [side_effect, side_effect]
|
||||||
|
|
||||||
# We'll fail now because of our error handling
|
# We'll fail now because of our error handling
|
||||||
assert obj.send(body="test", attach=attach) is False
|
assert obj.send(body="test", attach=attach) is False
|
||||||
|
|
||||||
|
# Same case without an attachment
|
||||||
|
assert obj.send(body="test") is False
|
||||||
|
|
|
@ -952,6 +952,10 @@ TEST_URLS = (
|
||||||
# Our expected url(privacy=True) startswith() response:
|
# Our expected url(privacy=True) startswith() response:
|
||||||
'privacy_url': 'gotify://hostname/a/path/ending/in/a/slash/u...u/',
|
'privacy_url': 'gotify://hostname/a/path/ending/in/a/slash/u...u/',
|
||||||
}),
|
}),
|
||||||
|
# Markdown test
|
||||||
|
('gotify://hostname/%s?format=markdown' % ('t' * 16), {
|
||||||
|
'instance': plugins.NotifyGotify,
|
||||||
|
}),
|
||||||
# Provide a hostname, path, and token
|
# Provide a hostname, path, and token
|
||||||
('gotify://hostname/a/path/not/ending/in/a/slash/%s' % ('v' * 16), {
|
('gotify://hostname/a/path/not/ending/in/a/slash/%s' % ('v' * 16), {
|
||||||
'instance': plugins.NotifyGotify,
|
'instance': plugins.NotifyGotify,
|
||||||
|
|
Loading…
Reference in New Issue