@@ -1183,3 +1183,97 @@ def test_render_simplified_wifi_bridge(self):
11831183 def test_parse_simplified_wifi_bridge (self ):
11841184 o = OpenWrt (native = self ._wifi_simplified_bridge_uci )
11851185 self .assertEqual (o .config , self ._wifi_simplified_bridge_netjson )
1186+
1187+ _wireless_interface_netjson = {
1188+ "interfaces" : [
1189+ # client
1190+ {
1191+ "name" : "cpwlan0" ,
1192+ "type" : "wireless" ,
1193+ "wireless" : {
1194+ "mode" : "access_point" ,
1195+ "radio" : "radio0" ,
1196+ "ssid" : "OpenWISP Test" ,
1197+ "encryption" : {"protocol" : "none" },
1198+ "wmm" : True ,
1199+ "isolate" : True ,
1200+ },
1201+ },
1202+ {
1203+ "type" : "wireless" ,
1204+ "name" : "cpwlan1" ,
1205+ "wireless" : {
1206+ "mode" : "access_point" ,
1207+ "radio" : "radio1" ,
1208+ "ssid" : "OpenWISP Test" ,
1209+ "encryption" : {"protocol" : "none" },
1210+ "wmm" : True ,
1211+ "isolate" : True ,
1212+ },
1213+ },
1214+ # bridge
1215+ {
1216+ "name" : "br-cpwifi" ,
1217+ "network" : "cpwifi" ,
1218+ "type" : "bridge" ,
1219+ "bridge_members" : ["cpwlan0" , "cpwlan1" ],
1220+ },
1221+ ]
1222+ }
1223+ _wireless_interface_uci = """package network
1224+
1225+ config device 'device_cpwlan0'
1226+ option name 'cpwlan0'
1227+
1228+ config interface 'cpwlan0'
1229+ option device 'cpwlan0'
1230+ option proto 'none'
1231+
1232+ config device 'device_cpwlan1'
1233+ option name 'cpwlan1'
1234+
1235+ config interface 'cpwlan1'
1236+ option device 'cpwlan1'
1237+ option proto 'none'
1238+
1239+ config device 'device_cpwifi'
1240+ option name 'br-cpwifi'
1241+ list ports 'cpwlan0'
1242+ list ports 'cpwlan1'
1243+ option type 'bridge'
1244+
1245+ config interface 'cpwifi'
1246+ option device 'br-cpwifi'
1247+ option proto 'none'
1248+
1249+ package wireless
1250+
1251+ config wifi-iface 'wifi_cpwlan0'
1252+ option device 'radio0'
1253+ option encryption 'none'
1254+ option ifname 'cpwlan0'
1255+ option isolate '1'
1256+ option mode 'ap'
1257+ option network 'cpwifi'
1258+ option ssid 'OpenWISP Test'
1259+ option wmm '1'
1260+
1261+ config wifi-iface 'wifi_cpwlan1'
1262+ option device 'radio1'
1263+ option encryption 'none'
1264+ option ifname 'cpwlan1'
1265+ option isolate '1'
1266+ option mode 'ap'
1267+ option network 'cpwifi'
1268+ option ssid 'OpenWISP Test'
1269+ option wmm '1'
1270+ """
1271+
1272+ def test_render_wireless_interface_name (self ):
1273+ o = OpenWrt (self ._wireless_interface_netjson )
1274+ expected = self ._tabs (self ._wireless_interface_uci )
1275+ self .assertEqual (o .render (), expected )
1276+
1277+ def test_parse_wireless_interface_name (self ):
1278+ o = OpenWrt (native = self ._wireless_interface_uci )
1279+ self .assertEqual (o .config , self ._wireless_interface_netjson )
0 commit comments