1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
|
import pytest
from datetime import datetime, timezone
from pyhamtools.lookuplib import LookupLib
from pyhamtools.exceptions import APIKeyMissingError
#Fixtures
#===========================================================
response_Exception_DH1TW = {
'adif': 230,
'country': u'FEDERAL REPUBLIC OF GERMANY',
'continent': u'EU',
'latitude': 51.0,
'longitude': -10.0,
'cqz': 14
}
response_Exception_VU9KV = {
'adif': 324,
'country': u'INDIA',
'continent': u'AS',
'latitude': 22.0,
'longitude': -80.0,
'cqz': 22
}
response_Exception_VU9KV_with_Date = {
'adif': 11,
'country': u'ANDAMAN & NICOBAR ISLANDS',
'continent': u'AS',
'latitude': 11.70,
'longitude': -92.80,
'cqz': 26
}
response_Exception_DH1TW_MM = {
'adif': 999,
'country': u'MARITIME MOBILE',
'continent': u'',
'latitude': 0.0,
'longitude': 0.0,
'cqz': 0
}
response_Exception_DH1TW_AM = {
'adif': 998,
'country': u'AIRCRAFT MOBILE',
'continent': u'',
'longitude': 0.0,
'latitude': 0.0,
'cqz': 0
}
#TESTS
#===========================================================
class TestClublogApi_Constructor:
def test_with_invalid_api_key(self):
with pytest.raises(APIKeyMissingError):
lib = LookupLib(lookuptype="clublogapi", apikey="foo")
lib.lookup_callsign("DH1TW")
def test_with_no_api_key(self):
with pytest.raises(APIKeyMissingError):
lib = LookupLib(lookuptype="clublogapi")
lib.lookup_callsign("DH1TW")
class TestclublogApi_Getters:
#getEntity(adif)
#===============================
def test_lookup_callsign(self, fixClublogApi):
assert fixClublogApi.lookup_entity(230) is None
#lookup_callsign(callsign, [date])
#===============================
def test_lookup_callsign(self, fixClublogApi):
assert fixClublogApi.lookup_callsign("DH1TW") == response_Exception_DH1TW
assert fixClublogApi.lookup_callsign("VU9KV") == response_Exception_VU9KV
d = datetime.now(timezone.utc).replace(year=1971, month=4, day=14)
assert fixClublogApi.lookup_callsign("VU9KV", d) == response_Exception_VU9KV_with_Date
assert fixClublogApi.lookup_callsign("DH1TW/MM") == response_Exception_DH1TW_MM
assert fixClublogApi.lookup_callsign("DH1TW/AM") == response_Exception_DH1TW_AM
with pytest.raises(KeyError):
fixClublogApi.lookup_callsign("QRM")
with pytest.raises(KeyError):
fixClublogApi.lookup_callsign("")
#lookup_prefix(prefix, [date])
#===============================
def test_lookup_callsign(self, fixClublogApi):
with pytest.raises(KeyError):
fixClublogApi.lookup_prefix("DH")
#is_invalid_operation(callsign, [date])
#===============================
def test_is_invalid_operation(self, fixClublogApi):
with pytest.raises(KeyError):
fixClublogApi.is_invalid_operation("5W1CFN")
#lookup_zone_exception(callsign, [date])
#====================================
def test_lookup_zone_exception(self, fixClublogApi):
with pytest.raises(KeyError):
fixClublogApi.lookup_zone_exception("dp0gvn")
|