updated to fit with recent global changes

octopush-support
Chris Caron 2023-07-01 13:00:41 -04:00
parent 050ffd82ed
commit 70b747cb91
2 changed files with 17 additions and 10 deletions

View File

@ -141,6 +141,7 @@ class NotifyOctopush(NotifyBase):
'targets': { 'targets': {
'name': _('Targets'), 'name': _('Targets'),
'type': 'list:string', 'type': 'list:string',
'required': True,
}, },
}) })
@ -409,6 +410,12 @@ class NotifyOctopush(NotifyBase):
params=NotifyOctopush.urlencode(params), params=NotifyOctopush.urlencode(params),
) )
def __len__(self):
"""
Returns the number of targets associated with this notification
"""
return len(self.targets)
@staticmethod @staticmethod
def parse_url(url): def parse_url(url):
""" """

View File

@ -57,25 +57,25 @@ apprise_url_tests = (
}), }),
('octopush://user@myaccount.com/apikey', { ('octopush://user@myaccount.com/apikey', {
# All valid entries, but no target phone numbers defined # All valid entries, but no target phone numbers defined
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
'response': False, 'response': False,
}), }),
('octopush://user@myaccount.com/apikey/+0987654321', { ('octopush://user@myaccount.com/apikey/+0987654321', {
# A valid url # A valid url
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
# Our expected url(privacy=True) startswith() response: # Our expected url(privacy=True) startswith() response:
'privacy_url': 'octopush://u...m/****/+0987654321', 'privacy_url': 'octopush://u...m/****/+0987654321',
}), }),
('octopush://sender:user@myaccount.com/apikey/+1111111111', { ('octopush://sender:user@myaccount.com/apikey/+1111111111', {
# A valid url with sender # A valid url with sender
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
# Our expected url(privacy=True) startswith() response: # Our expected url(privacy=True) startswith() response:
'privacy_url': 'octopush://sender:u...m/****/+1111111111', 'privacy_url': 'octopush://sender:u...m/****/+1111111111',
}), }),
('octopush://?login=user@myaccount.com&key=key&to=9999999999' ('octopush://?login=user@myaccount.com&key=key&to=9999999999'
'&purpose=wholesale', { '&purpose=wholesale', {
# Testing valid purpose change # Testing valid purpose change
'instance': plugins.NotifyOctopush}), 'instance': plugins.NotifyOctopush.NotifyOctopush}),
('octopush://?login=user@myaccount.com&key=key&to=9999999999' ('octopush://?login=user@myaccount.com&key=key&to=9999999999'
'&purpose=invalid', { '&purpose=invalid', {
# Testing invalid purpose change # Testing invalid purpose change
@ -83,33 +83,33 @@ apprise_url_tests = (
('octopush://?login=user@myaccount.com&key=key&to=9999999999' ('octopush://?login=user@myaccount.com&key=key&to=9999999999'
'&type=premium', { '&type=premium', {
# Testing valid type change # Testing valid type change
'instance': plugins.NotifyOctopush}), 'instance': plugins.NotifyOctopush.NotifyOctopush}),
('octopush://?login=user@myaccount.com&key=key&to=9999999999' ('octopush://?login=user@myaccount.com&key=key&to=9999999999'
'&type=invalid', { '&type=invalid', {
# Testing invalid type change # Testing invalid type change
'instance': TypeError}), 'instance': TypeError}),
('octopush://user@myaccount.com/apikey/+3333333333?replies=yes', { ('octopush://user@myaccount.com/apikey/+3333333333?replies=yes', {
# Test replies # Test replies
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
}), }),
('octopush://sender:user@myaccount.com/apikey/{}/{}/{}/?batch=yes'.format( ('octopush://sender:user@myaccount.com/apikey/{}/{}/{}/?batch=yes'.format(
'1' * 10, '2' * 3, '3' * 11), { '1' * 10, '2' * 3, '3' * 11), {
# batch mode, 2 valid targets (1 is invalid and skipped) # batch mode, 2 valid targets (1 is invalid and skipped)
'instance': plugins.NotifyOctopush}), 'instance': plugins.NotifyOctopush.NotifyOctopush}),
('octopush://_?key=abc123&login=user@myaccount&sender=abc&to=2222222222', { ('octopush://_?key=abc123&login=user@myaccount&sender=abc&to=2222222222', {
# use get args to acomplish the same thing # use get args to acomplish the same thing
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
# Our expected url(privacy=True) startswith() response: # Our expected url(privacy=True) startswith() response:
'privacy_url': 'octopush://abc:u...t/****/+2222222222', 'privacy_url': 'octopush://abc:u...t/****/+2222222222',
}), }),
('octopush://user@myaccount.com/apikey/1234567890', { ('octopush://user@myaccount.com/apikey/1234567890', {
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
# throw a bizzare code forcing us to fail to look it up # throw a bizzare code forcing us to fail to look it up
'response': False, 'response': False,
'requests_response_code': 999, 'requests_response_code': 999,
}), }),
('octopush://user@myaccount.com/apikey/1234567890', { ('octopush://user@myaccount.com/apikey/1234567890', {
'instance': plugins.NotifyOctopush, 'instance': plugins.NotifyOctopush.NotifyOctopush,
# Throws a series of connection and transfer exceptions when this flag # Throws a series of connection and transfer exceptions when this flag
# is set and tests that we gracfully handle them # is set and tests that we gracfully handle them
'test_requests_exceptions': True, 'test_requests_exceptions': True,