@@ -15,6 +15,104 @@ def test_20_exception(self):
1515 self .assertRaises (Exception , hamcc .CassiopeiaConsole , 'XX1XXX222' , 'AA11aa' )
1616 self .assertRaises (Exception , hamcc .CassiopeiaConsole , 'XX1XXX' , 'AA11zz' )
1717
18+ def test_30_init_qso (self ):
19+ init_qso = {
20+ 'STATION_CALLSIGN' : 'XX1XXX' ,
21+ 'MY_GRIDSQUARE' : 'AA11aa' ,
22+ 'QSO_DATE' : '20241122' ,
23+ 'TIME_ON' : '2233' ,
24+ 'BAND' : '2M' ,
25+ 'MODE' : 'SSB' ,
26+ 'CALL' : '1Y1YY' ,
27+ 'GRIDSQUARE' : 'BB22bb' ,
28+ 'MY_NAME' : 'Tester' ,
29+ 'COMMENT' : 'Test Comment' ,
30+ 'FREQ' : '123456' ,
31+ 'TX_PWR' : '23' ,
32+ 'NAME' : 'Nobody' ,
33+ }
34+
35+ init_res = {
36+ 'STATION_CALLSIGN' : 'XX1XXX' ,
37+ 'MY_GRIDSQUARE' : 'AA11aa' ,
38+ 'QSO_DATE' : '20241122' ,
39+ 'TIME_ON' : '2233' ,
40+ 'BAND' : '2M' ,
41+ 'MODE' : 'SSB' ,
42+ 'CALL' : '' ,
43+ 'GRIDSQUARE' : '' ,
44+ 'MY_NAME' : 'Tester' ,
45+ 'COMMENT' : 'Test Comment' ,
46+ 'RST_RCVD' : '59' ,
47+ 'RST_SENT' : '59' ,
48+ 'FREQ' : '123456' ,
49+ 'TX_PWR' : '23' ,
50+ }
51+
52+ cc = hamcc .CassiopeiaConsole ('XX1XXX' , 'AA11aa' , 'Tester' ,
53+ init_qso = init_qso )
54+
55+ self .assertDictEqual (init_res , cc .current_qso )
56+
57+ def test_40_qso (self ):
58+ qso = [
59+ '20241122d' ,
60+ '2233t' ,
61+ '2m' ,
62+ 's' ,
63+ '1Y1YY' ,
64+ '@BB22bb' ,
65+ '#Test_Comment' ,
66+ '123456f' ,
67+ '23p' ,
68+ '\' Nobody' ,
69+ ]
70+
71+ qso_res = {
72+ 'STATION_CALLSIGN' : 'XX1XXX' ,
73+ 'MY_GRIDSQUARE' : 'AA11aa' ,
74+ 'QSO_DATE' : '20241122' ,
75+ 'TIME_ON' : '2233' ,
76+ 'BAND' : '2m' ,
77+ 'MODE' : 'SSB' ,
78+ 'CALL' : '1Y1YY' ,
79+ 'NAME' : 'Nobody' ,
80+ 'GRIDSQUARE' : 'BB22bb' ,
81+ 'MY_NAME' : 'Tester' ,
82+ 'COMMENT' : 'Test Comment' ,
83+ 'RST_RCVD' : '59' ,
84+ 'RST_SENT' : '59' ,
85+ 'FREQ' : '123.456' ,
86+ 'TX_PWR' : '23' ,
87+ }
88+
89+ new_qso = {
90+ 'STATION_CALLSIGN' : 'XX1XXX' ,
91+ 'MY_GRIDSQUARE' : 'AA11aa' ,
92+ 'QSO_DATE' : '20241122' ,
93+ 'TIME_ON' : '2233' ,
94+ 'BAND' : '2m' ,
95+ 'MODE' : 'SSB' ,
96+ 'CALL' : '' ,
97+ 'GRIDSQUARE' : '' ,
98+ 'MY_NAME' : 'Tester' ,
99+ 'COMMENT' : 'Test Comment' ,
100+ 'RST_RCVD' : '59' ,
101+ 'RST_SENT' : '59' ,
102+ 'FREQ' : '123.456' ,
103+ 'TX_PWR' : '23' ,
104+ }
105+
106+ cc = hamcc .CassiopeiaConsole ('XX1XXX' , 'AA11aa' , 'Tester' )
107+
108+ for e in qso :
109+ self .assertEqual ('' , cc .evaluate (e ))
110+
111+ self .assertDictEqual (qso_res , cc .current_qso )
112+ self .assertIn ('Last QSO cached: 1Y1YY' , cc .append_char ('\n ' ))
113+
114+ self .assertDictEqual (new_qso , cc .current_qso )
115+
18116
19117if __name__ == '__main__' :
20118 unittest .main ()
0 commit comments