11from unittest import skip
2+
23from .mock import ConverterTest , EbtablesAirOs
34
45
5- class EbtablesConverter (ConverterTest ):
6+ class EbtablesConverterBridge (ConverterTest ):
67 backend = EbtablesAirOs
78
89 def test_station_none (self ):
@@ -151,13 +152,15 @@ def test_access_psk(self):
151152 'status' : 'enabled' ,
152153 },
153154 {
155+ 'sys.eap.1.devname' : 'ath0' ,
156+ 'sys.eap.1.status' : 'enabled' ,
157+ 'sys.eap.status' : 'enabled' ,
154158 'sys.fw.status' : 'disabled' ,
155159 'sys.status' : 'enabled' ,
156160 },
157161 ]
158162 self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
159163
160- @skip
161164 def test_access_eap (self ):
162165 o = self .backend ({
163166 'interfaces' : [
@@ -171,6 +174,7 @@ def test_access_eap(self):
171174 'encryption' : {
172175 'protocol' : 'wpa2_enterprise' ,
173176 'server' : '192.168.1.1' ,
177+ 'key' : 'changeme' ,
174178 }
175179 }
176180 }
@@ -182,8 +186,190 @@ def test_access_eap(self):
182186 'status' : 'enabled' ,
183187 },
184188 {
189+ 'sys.eap.1.devname' : 'ath0' ,
190+ 'sys.eap.1.status' : 'enabled' ,
191+ 'sys.eap.status' : 'enabled' ,
185192 'sys.fw.status' : 'disabled' ,
186193 'sys.status' : 'enabled' ,
187194 },
188195 ]
189196 self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
197+
198+
199+ class EbtablesConverterRouter (ConverterTest ):
200+ backend = EbtablesAirOs
201+
202+ def test_station_none (self ):
203+ o = self .backend ({
204+ 'interfaces' : [
205+ {
206+ 'type' : 'wireless' ,
207+ 'name' : 'wlan0' ,
208+ 'wireless' : {
209+ 'mode' : 'station' ,
210+ 'radio' : 'ath0' ,
211+ 'ssid' : 'ubnt' ,
212+ 'bssid' : '00:11:22:33:44:55' ,
213+ }
214+ }
215+ ],
216+ "netmode" : "router" ,
217+ })
218+ o .to_intermediate ()
219+ expected = []
220+ self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
221+
222+ def test_station_psk (self ):
223+ o = self .backend ({
224+ 'interfaces' : [
225+ {
226+ 'type' : 'wireless' ,
227+ 'name' : 'wlan0' ,
228+ 'wireless' : {
229+ 'mode' : 'station' ,
230+ 'radio' : 'ath0' ,
231+ 'ssid' : 'ubnt' ,
232+ 'bssid' : '00:11:22:33:44:55' ,
233+ 'encryption' : {
234+ 'protocol' : 'wpa2_personal' ,
235+ 'key' : 'changeme' ,
236+ }
237+ }
238+ }
239+ ],
240+ "netmode" : "router" ,
241+ })
242+ o .to_intermediate ()
243+ expected = [
244+ {
245+ 'status' : 'enabled' ,
246+ },
247+ {
248+ 'sys.eap.1.devname' : 'ath0' ,
249+ 'sys.eap.1.status' : 'enabled' ,
250+ 'sys.eap.status' : 'enabled' ,
251+ 'sys.status' : 'enabled' ,
252+ },
253+ ]
254+ self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
255+
256+ def test_station_eap (self ):
257+ o = self .backend ({
258+ 'interfaces' : [
259+ {
260+ 'type' : 'wireless' ,
261+ 'name' : 'wlan0' ,
262+ 'wireless' : {
263+ 'mode' : 'station' ,
264+ 'radio' : 'ath0' ,
265+ 'ssid' : 'ubnt' ,
266+ 'bssid' : '00:11:22:33:44:55' ,
267+ 'encryption' : {
268+ 'protocol' : 'wpa2_enterprise' ,
269+ 'identity' : 'name@domain.com' ,
270+ 'key' : 'changeme' ,
271+ }
272+ }
273+ }
274+ ],
275+ "netmode" : "router" ,
276+ })
277+ o .to_intermediate ()
278+ expected = [
279+ {
280+ 'status' : 'enabled' ,
281+ },
282+ {
283+ 'sys.eap.1.devname' : 'ath0' ,
284+ 'sys.eap.1.status' : 'enabled' ,
285+ 'sys.eap.status' : 'enabled' ,
286+ 'sys.status' : 'enabled' ,
287+ },
288+ ]
289+ self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
290+
291+ def test_access_none (self ):
292+ o = self .backend ({
293+ 'interfaces' : [
294+ {
295+ 'type' : 'wireless' ,
296+ 'name' : 'wlan0' ,
297+ 'wireless' : {
298+ 'mode' : 'access_point' ,
299+ 'radio' : 'ath0' ,
300+ 'ssid' : 'ubnt' ,
301+ }
302+ }
303+ ],
304+ "netmode" : "router" ,
305+ })
306+ o .to_intermediate ()
307+ expected = []
308+ self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
309+
310+ def test_access_psk (self ):
311+ o = self .backend ({
312+ 'interfaces' : [
313+ {
314+ 'type' : 'wireless' ,
315+ 'name' : 'wlan0' ,
316+ 'wireless' : {
317+ 'mode' : 'access_point' ,
318+ 'radio' : 'ath0' ,
319+ 'ssid' : 'ubnt' ,
320+ 'encryption' : {
321+ 'protocol' : 'wpa2_personal' ,
322+ 'key' : 'changeme' ,
323+ }
324+ }
325+ }
326+ ],
327+ "netmode" : "router" ,
328+ })
329+ o .to_intermediate ()
330+ expected = [
331+ {
332+ 'status' : 'enabled' ,
333+ },
334+ {
335+ 'sys.eap.1.devname' : 'ath0' ,
336+ 'sys.eap.1.status' : 'enabled' ,
337+ 'sys.eap.status' : 'enabled' ,
338+ 'sys.status' : 'enabled' ,
339+ },
340+ ]
341+ self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
342+
343+ @skip
344+ def test_access_eap (self ):
345+ o = self .backend ({
346+ 'interfaces' : [
347+ {
348+ 'type' : 'wireless' ,
349+ 'name' : 'wlan0' ,
350+ 'wireless' : {
351+ 'mode' : 'access_point' ,
352+ 'radio' : 'ath0' ,
353+ 'ssid' : 'ubnt' ,
354+ 'encryption' : {
355+ 'protocol' : 'wpa2_enterprise' ,
356+ 'server' : '192.168.1.1' ,
357+ }
358+ }
359+ }
360+ ],
361+ "netmode" : "router" ,
362+ })
363+ o .to_intermediate ()
364+ expected = [
365+ {
366+ 'status' : 'enabled' ,
367+ },
368+ {
369+ 'sys.eap.1.devname' : 'ath0' ,
370+ 'sys.eap.1.status' : 'enabled' ,
371+ 'sys.eap.status' : 'enabled' ,
372+ 'sys.status' : 'enabled' ,
373+ },
374+ ]
375+ self .assertEqualConfig (o .intermediate_data ['ebtables' ], expected )
0 commit comments