31 lines
969 B
Python
31 lines
969 B
Python
# This only tests the TokenCredentials test case, since the
|
|
# CertificateCredentials would be mocked out anyway.
|
|
# Namely:
|
|
# - timing out of the token
|
|
# - creating multiple tokens for different topics
|
|
|
|
import pytest
|
|
from freezegun import freeze_time
|
|
|
|
from apns2.credentials import TokenCredentials
|
|
|
|
TOPIC = 'com.example.first_app'
|
|
|
|
|
|
@pytest.fixture
|
|
def token_credentials():
|
|
return TokenCredentials('test/eckey.pem', '1QBCDJ9RST', '3Z24IP123A')
|
|
|
|
|
|
def test_token_expiration(token_credentials):
|
|
# As long as the token lifetime hasn't elapsed, this should work. To
|
|
# be really careful, we should check how much time has elapsed to
|
|
# know if it fail. But, either way, we'd have to come up with a good
|
|
# lifetime for future tests...
|
|
|
|
with freeze_time('2012-01-14'):
|
|
expiring_header = token_credentials.get_authorization_header(TOPIC)
|
|
|
|
new_header = token_credentials.get_authorization_header(TOPIC)
|
|
assert expiring_header != new_header
|