diff options
author | Christian Poessinger <christian@poessinger.com> | 2021-08-15 12:13:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-15 12:13:01 +0200 |
commit | 2e15f551713fa4a8663415c1e30bbc50cd094050 (patch) | |
tree | cda89a9c4eab8b48102f3c830c4c65c1c365637e /smoketest/scripts | |
parent | edcf31d239688a452f8db874e4ffcfac96f583fb (diff) | |
parent | a378822f26268c1e8cbfcf754e5cad5c310c7c3c (diff) | |
download | vyos-1x-2e15f551713fa4a8663415c1e30bbc50cd094050.tar.gz vyos-1x-2e15f551713fa4a8663415c1e30bbc50cd094050.zip |
Merge pull request #944 from sever-sever/T3702
pbr: T3702: Add rules match fwmark
Diffstat (limited to 'smoketest/scripts')
-rwxr-xr-x | smoketest/scripts/cli/test_policy.py | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/smoketest/scripts/cli/test_policy.py b/smoketest/scripts/cli/test_policy.py index 2d7b78048..485cc274a 100755 --- a/smoketest/scripts/cli/test_policy.py +++ b/smoketest/scripts/cli/test_policy.py @@ -1116,5 +1116,58 @@ class TestPolicy(VyOSUnitTestSHIM.TestCase): self.assertEqual(tmp, original) + # Test set table for fwmark + def test_fwmark_table_id(self): + path = base_path + ['local-route'] + + fwmk = '24' + rule = '101' + table = '154' + + self.cli_set(path + ['rule', rule, 'set', 'table', table]) + self.cli_set(path + ['rule', rule, 'fwmark', fwmk]) + + self.cli_commit() + + # Check generated configuration + + # Expected values + original = """ + 101: from all fwmark 0x18 lookup 154 + """ + tmp = cmd('ip rule show prio 101') + original = original.split() + tmp = tmp.split() + + self.assertEqual(tmp, original) + + # Test set table for sources with fwmark + def test_fwmark_sources_table_id(self): + path = base_path + ['local-route'] + + sources = ['203.0.113.11', '203.0.113.12'] + fwmk = '23' + rule = '100' + table = '150' + for src in sources: + self.cli_set(path + ['rule', rule, 'set', 'table', table]) + self.cli_set(path + ['rule', rule, 'source', src]) + self.cli_set(path + ['rule', rule, 'fwmark', fwmk]) + + self.cli_commit() + + # Check generated configuration + + # Expected values + original = """ + 100: from 203.0.113.11 fwmark 0x17 lookup 150 + 100: from 203.0.113.12 fwmark 0x17 lookup 150 + """ + tmp = cmd('ip rule show prio 100') + original = original.split() + tmp = tmp.split() + + self.assertEqual(tmp, original) + if __name__ == '__main__': unittest.main(verbosity=2) |