summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@baturin.org>2017-01-04 19:02:33 +0700
committerDaniil Baturin <daniil@baturin.org>2017-01-04 19:02:33 +0700
commit2f000add8273c7a4efba39b64aa545384af8a5df (patch)
tree3d780a5f4f3e75fba45f7584fdc5a2d8885cf6e0 /test
parent23076d3265dbfb17fe30f70aaaf74ca0a9c6cc6b (diff)
downloadvyconf-2f000add8273c7a4efba39b64aa545384af8a5df.tar.gz
vyconf-2f000add8273c7a4efba39b64aa545384af8a5df.zip
Add a grammar for generating curly configs for parser fuzzing tests.
Subject to improvement and extension to cover more cases.
Diffstat (limited to 'test')
-rw-r--r--test/data/vyos-curly-config.bnf15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/data/vyos-curly-config.bnf b/test/data/vyos-curly-config.bnf
new file mode 100644
index 0000000..917d689
--- /dev/null
+++ b/test/data/vyos-curly-config.bnf
@@ -0,0 +1,15 @@
+<start> ::= <nodes> ;
+
+<nodes> ::= 10 <nodes> <node> | <node> ;
+
+<node> ::= <identifier> "{" <innerNodes> "}" ;
+
+<innerNodes> ::= 5 <innerNodes> | <node> | <tagNode> | <leafNode> ;
+
+<tagNode> ::= <identifier> <identifier> "{" <innerNodes> "}" ;
+
+<leafNode> ::= <identifier> <value> ";" ;
+
+<identifier> ::= "foo" | "bar" | "baz" | "quux" | "xyzzy" ;
+
+<value> ::= "192.0.2.1" | "203.0.113.0" | "foobar" | "1000"