Skip to content

Commit 4c134bc

Browse files
[openwrt] Add firewall rules tests
1 parent 9f6c0fc commit 4c134bc

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

tests/openwrt/test_firewall.py

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,49 @@ def test_parse_rule_4(self):
178178
o = OpenWrt(native=self._rule_4_uci)
179179
self.assertEqual(o.config, self._rule_4_netjson)
180180

181+
_rule_5_netjson = {
182+
"firewall": {
183+
"rules": [
184+
{
185+
"name": "Allow-Isolated-DHCP",
186+
"src_ip": "10.10.10.10",
187+
"src_mac": "fc:aa:14:18:12:98",
188+
"src": "isolated",
189+
"proto": ["udp"],
190+
"dest_port": "67-68",
191+
"target": "ACCEPT",
192+
193+
}
194+
]
195+
}
196+
}
197+
198+
_rule_5_uci = textwrap.dedent(
199+
"""\
200+
package firewall
201+
202+
config defaults 'defaults'
203+
204+
config rule 'rule_Allow_Isolated_DHCP'
205+
option name 'Allow-Isolated-DHCP'
206+
option src_ip '10.10.10.10'
207+
option src_mac 'fc:aa:14:18:12:98'
208+
option src 'isolated'
209+
option proto 'udp'
210+
option dest_port '67-68'
211+
option target 'ACCEPT'
212+
"""
213+
)
214+
215+
def test_render_rule_5(self):
216+
o = OpenWrt(self._rule_5_netjson)
217+
expected = self._tabs(self._rule_5_uci)
218+
self.assertEqual(o.render(), expected)
219+
220+
def test_parse_rule_5(self):
221+
o = OpenWrt(native=self._rule_5_uci)
222+
self.assertEqual(o.config, self._rule_5_netjson)
223+
181224
_zone_1_netjson = {
182225
"firewall": {
183226
"zones": [

0 commit comments

Comments
 (0)