diff options
Diffstat (limited to 'ql/test/lexing')
66 files changed, 143 insertions, 0 deletions
diff --git a/ql/test/lexing/__pycache__/test_lexing.cpython-35.pyc b/ql/test/lexing/__pycache__/test_lexing.cpython-35.pyc Binary files differnew file mode 100644 index 0000000..eca2f01 --- /dev/null +++ b/ql/test/lexing/__pycache__/test_lexing.cpython-35.pyc diff --git a/ql/test/lexing/invalid/test001.ql b/ql/test/lexing/invalid/test001.ql new file mode 100644 index 0000000..37bf0fd --- /dev/null +++ b/ql/test/lexing/invalid/test001.ql @@ -0,0 +1,2 @@ +// Illegal character (`) +`
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test002.ql b/ql/test/lexing/invalid/test002.ql new file mode 100644 index 0000000..b691de9 --- /dev/null +++ b/ql/test/lexing/invalid/test002.ql @@ -0,0 +1,2 @@ +// Illegal character (~) +~
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test003.ql b/ql/test/lexing/invalid/test003.ql new file mode 100644 index 0000000..b75fc41 --- /dev/null +++ b/ql/test/lexing/invalid/test003.ql @@ -0,0 +1,2 @@ +// Illegal character (@) +@
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test004.ql b/ql/test/lexing/invalid/test004.ql new file mode 100644 index 0000000..9b3e1f7 --- /dev/null +++ b/ql/test/lexing/invalid/test004.ql @@ -0,0 +1,2 @@ +// Illegal character (#) +#
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test005.ql b/ql/test/lexing/invalid/test005.ql new file mode 100644 index 0000000..9bd5fc4 --- /dev/null +++ b/ql/test/lexing/invalid/test005.ql @@ -0,0 +1,2 @@ +// Illegal character (€) +€
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test006.ql b/ql/test/lexing/invalid/test006.ql new file mode 100644 index 0000000..a7c1336 --- /dev/null +++ b/ql/test/lexing/invalid/test006.ql @@ -0,0 +1,2 @@ +// Illegal character (%) +%
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test007.ql b/ql/test/lexing/invalid/test007.ql new file mode 100644 index 0000000..39cbd63 --- /dev/null +++ b/ql/test/lexing/invalid/test007.ql @@ -0,0 +1,2 @@ +// Illegal character (^) +^
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test008.ql b/ql/test/lexing/invalid/test008.ql new file mode 100644 index 0000000..82f2836 --- /dev/null +++ b/ql/test/lexing/invalid/test008.ql @@ -0,0 +1,2 @@ +// Illegal character (&) +&
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test009.ql b/ql/test/lexing/invalid/test009.ql new file mode 100644 index 0000000..e92526e --- /dev/null +++ b/ql/test/lexing/invalid/test009.ql @@ -0,0 +1,2 @@ +// Illegal character (_) +_
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test010.ql b/ql/test/lexing/invalid/test010.ql new file mode 100644 index 0000000..30c8837 --- /dev/null +++ b/ql/test/lexing/invalid/test010.ql @@ -0,0 +1,2 @@ +// Illegal character ([) +[
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test011.ql b/ql/test/lexing/invalid/test011.ql new file mode 100644 index 0000000..f047fbc --- /dev/null +++ b/ql/test/lexing/invalid/test011.ql @@ -0,0 +1,2 @@ +// Illegal character (]) +]
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test012.ql b/ql/test/lexing/invalid/test012.ql new file mode 100644 index 0000000..81e3796 --- /dev/null +++ b/ql/test/lexing/invalid/test012.ql @@ -0,0 +1,2 @@ +// Illegal character (\) +\
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test013.ql b/ql/test/lexing/invalid/test013.ql new file mode 100644 index 0000000..0a6d02c --- /dev/null +++ b/ql/test/lexing/invalid/test013.ql @@ -0,0 +1,2 @@ +// Illegal character (|) +|
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test014.ql b/ql/test/lexing/invalid/test014.ql new file mode 100644 index 0000000..48ede2c --- /dev/null +++ b/ql/test/lexing/invalid/test014.ql @@ -0,0 +1,2 @@ +// Illegal character (;) +;
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test015.ql b/ql/test/lexing/invalid/test015.ql new file mode 100644 index 0000000..ec798a0 --- /dev/null +++ b/ql/test/lexing/invalid/test015.ql @@ -0,0 +1,2 @@ +// Illegal character (') +'
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test016.ql b/ql/test/lexing/invalid/test016.ql new file mode 100644 index 0000000..6d67365 --- /dev/null +++ b/ql/test/lexing/invalid/test016.ql @@ -0,0 +1,2 @@ +// Illegal character (") +"
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test017.ql b/ql/test/lexing/invalid/test017.ql new file mode 100644 index 0000000..d8907bd --- /dev/null +++ b/ql/test/lexing/invalid/test017.ql @@ -0,0 +1,2 @@ +// Illegal character (,) +,
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test018.ql b/ql/test/lexing/invalid/test018.ql new file mode 100644 index 0000000..73fece7 --- /dev/null +++ b/ql/test/lexing/invalid/test018.ql @@ -0,0 +1,2 @@ +// Illegal character (?) +?
\ No newline at end of file diff --git a/ql/test/lexing/invalid/test019.ql b/ql/test/lexing/invalid/test019.ql new file mode 100644 index 0000000..407e52e --- /dev/null +++ b/ql/test/lexing/invalid/test019.ql @@ -0,0 +1,2 @@ +// Illegal characters (uppercase characters) +A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
\ No newline at end of file diff --git a/ql/test/lexing/test_lexing.py b/ql/test/lexing/test_lexing.py new file mode 100644 index 0000000..978b1d7 --- /dev/null +++ b/ql/test/lexing/test_lexing.py @@ -0,0 +1,15 @@ +from ql.test.test import Test + + +class TestLexing(Test): + def __init__(self, directory, lexer): + super(TestLexing, self).__init__('lexing', directory) + self.__lexer = lexer + + def test_file(self, file): + self.__lexer.tokenize(file) + + if self.__lexer.errors: + return False + + return True diff --git a/ql/test/lexing/valid/test001.ql b/ql/test/lexing/valid/test001.ql new file mode 100644 index 0000000..9862fb0 --- /dev/null +++ b/ql/test/lexing/valid/test001.ql @@ -0,0 +1,2 @@ +// Form token +form
\ No newline at end of file diff --git a/ql/test/lexing/valid/test002.ql b/ql/test/lexing/valid/test002.ql new file mode 100644 index 0000000..2efece0 --- /dev/null +++ b/ql/test/lexing/valid/test002.ql @@ -0,0 +1,2 @@ +// If token +if
\ No newline at end of file diff --git a/ql/test/lexing/valid/test003.ql b/ql/test/lexing/valid/test003.ql new file mode 100644 index 0000000..dc30033 --- /dev/null +++ b/ql/test/lexing/valid/test003.ql @@ -0,0 +1,2 @@ +// Boolean type token +boolean
\ No newline at end of file diff --git a/ql/test/lexing/valid/test004.ql b/ql/test/lexing/valid/test004.ql new file mode 100644 index 0000000..233e652 --- /dev/null +++ b/ql/test/lexing/valid/test004.ql @@ -0,0 +1,2 @@ +// Date type token +date
\ No newline at end of file diff --git a/ql/test/lexing/valid/test005.ql b/ql/test/lexing/valid/test005.ql new file mode 100644 index 0000000..9d1f615 --- /dev/null +++ b/ql/test/lexing/valid/test005.ql @@ -0,0 +1,2 @@ +// Decimal type token +decimal
\ No newline at end of file diff --git a/ql/test/lexing/valid/test006.ql b/ql/test/lexing/valid/test006.ql new file mode 100644 index 0000000..506c72e --- /dev/null +++ b/ql/test/lexing/valid/test006.ql @@ -0,0 +1,2 @@ +// Integer type token +integer
\ No newline at end of file diff --git a/ql/test/lexing/valid/test007.ql b/ql/test/lexing/valid/test007.ql new file mode 100644 index 0000000..66c665f --- /dev/null +++ b/ql/test/lexing/valid/test007.ql @@ -0,0 +1,2 @@ +// Money type token +money
\ No newline at end of file diff --git a/ql/test/lexing/valid/test008.ql b/ql/test/lexing/valid/test008.ql new file mode 100644 index 0000000..3455595 --- /dev/null +++ b/ql/test/lexing/valid/test008.ql @@ -0,0 +1,2 @@ +// String type token +string
\ No newline at end of file diff --git a/ql/test/lexing/valid/test009.ql b/ql/test/lexing/valid/test009.ql new file mode 100644 index 0000000..123a526 --- /dev/null +++ b/ql/test/lexing/valid/test009.ql @@ -0,0 +1,2 @@ +// Plus token ++
\ No newline at end of file diff --git a/ql/test/lexing/valid/test010.ql b/ql/test/lexing/valid/test010.ql new file mode 100644 index 0000000..ac494f7 --- /dev/null +++ b/ql/test/lexing/valid/test010.ql @@ -0,0 +1,2 @@ +// Minus token +-
\ No newline at end of file diff --git a/ql/test/lexing/valid/test011.ql b/ql/test/lexing/valid/test011.ql new file mode 100644 index 0000000..c53f248 --- /dev/null +++ b/ql/test/lexing/valid/test011.ql @@ -0,0 +1,2 @@ +// Times token +*
\ No newline at end of file diff --git a/ql/test/lexing/valid/test012.ql b/ql/test/lexing/valid/test012.ql new file mode 100644 index 0000000..195d9b9 --- /dev/null +++ b/ql/test/lexing/valid/test012.ql @@ -0,0 +1,2 @@ +// Divide token +/
\ No newline at end of file diff --git a/ql/test/lexing/valid/test013.ql b/ql/test/lexing/valid/test013.ql new file mode 100644 index 0000000..d1c0471 --- /dev/null +++ b/ql/test/lexing/valid/test013.ql @@ -0,0 +1,2 @@ +// Colon token +:
\ No newline at end of file diff --git a/ql/test/lexing/valid/test014.ql b/ql/test/lexing/valid/test014.ql new file mode 100644 index 0000000..f72179a --- /dev/null +++ b/ql/test/lexing/valid/test014.ql @@ -0,0 +1,2 @@ +// Assign token +=
\ No newline at end of file diff --git a/ql/test/lexing/valid/test015.ql b/ql/test/lexing/valid/test015.ql new file mode 100644 index 0000000..09f1ea1 --- /dev/null +++ b/ql/test/lexing/valid/test015.ql @@ -0,0 +1,2 @@ +// Equals token +==
\ No newline at end of file diff --git a/ql/test/lexing/valid/test016.ql b/ql/test/lexing/valid/test016.ql new file mode 100644 index 0000000..9cc8e9b --- /dev/null +++ b/ql/test/lexing/valid/test016.ql @@ -0,0 +1,2 @@ +// Not equals token +!=
\ No newline at end of file diff --git a/ql/test/lexing/valid/test017.ql b/ql/test/lexing/valid/test017.ql new file mode 100644 index 0000000..ce8af09 --- /dev/null +++ b/ql/test/lexing/valid/test017.ql @@ -0,0 +1,2 @@ +// Greater than token +>
\ No newline at end of file diff --git a/ql/test/lexing/valid/test018.ql b/ql/test/lexing/valid/test018.ql new file mode 100644 index 0000000..dad4f9c --- /dev/null +++ b/ql/test/lexing/valid/test018.ql @@ -0,0 +1,2 @@ +// Greater equals token +>=
\ No newline at end of file diff --git a/ql/test/lexing/valid/test019.ql b/ql/test/lexing/valid/test019.ql new file mode 100644 index 0000000..39ec8a3 --- /dev/null +++ b/ql/test/lexing/valid/test019.ql @@ -0,0 +1,2 @@ +// Less than token +<
\ No newline at end of file diff --git a/ql/test/lexing/valid/test020.ql b/ql/test/lexing/valid/test020.ql new file mode 100644 index 0000000..902ec15 --- /dev/null +++ b/ql/test/lexing/valid/test020.ql @@ -0,0 +1,2 @@ +// Less equals token +<=
\ No newline at end of file diff --git a/ql/test/lexing/valid/test021.ql b/ql/test/lexing/valid/test021.ql new file mode 100644 index 0000000..296f504 --- /dev/null +++ b/ql/test/lexing/valid/test021.ql @@ -0,0 +1,2 @@ +// Not token +not
\ No newline at end of file diff --git a/ql/test/lexing/valid/test022.ql b/ql/test/lexing/valid/test022.ql new file mode 100644 index 0000000..1d4fe36 --- /dev/null +++ b/ql/test/lexing/valid/test022.ql @@ -0,0 +1,2 @@ +// Brace tokens +{}
\ No newline at end of file diff --git a/ql/test/lexing/valid/test023.ql b/ql/test/lexing/valid/test023.ql new file mode 100644 index 0000000..3b27a60 --- /dev/null +++ b/ql/test/lexing/valid/test023.ql @@ -0,0 +1,2 @@ +// Bracket tokens +()
\ No newline at end of file diff --git a/ql/test/lexing/valid/test024.ql b/ql/test/lexing/valid/test024.ql new file mode 100644 index 0000000..72854c9 --- /dev/null +++ b/ql/test/lexing/valid/test024.ql @@ -0,0 +1,2 @@ +// Whitespace tokens + diff --git a/ql/test/lexing/valid/test025.ql b/ql/test/lexing/valid/test025.ql new file mode 100644 index 0000000..ceb93d0 --- /dev/null +++ b/ql/test/lexing/valid/test025.ql @@ -0,0 +1,2 @@ +// Identifier token (lowercase) +testidentifier
\ No newline at end of file diff --git a/ql/test/lexing/valid/test026.ql b/ql/test/lexing/valid/test026.ql new file mode 100644 index 0000000..90589b2 --- /dev/null +++ b/ql/test/lexing/valid/test026.ql @@ -0,0 +1,2 @@ +// Identifier token (camelcase) +testIdentifier
\ No newline at end of file diff --git a/ql/test/lexing/valid/test027.ql b/ql/test/lexing/valid/test027.ql new file mode 100644 index 0000000..076f4b0 --- /dev/null +++ b/ql/test/lexing/valid/test027.ql @@ -0,0 +1,2 @@ +// Identifier token (underscore) +test_identifier
\ No newline at end of file diff --git a/ql/test/lexing/valid/test028.ql b/ql/test/lexing/valid/test028.ql new file mode 100644 index 0000000..855dd9a --- /dev/null +++ b/ql/test/lexing/valid/test028.ql @@ -0,0 +1,2 @@ +// Identifier token (number) +identifier123
\ No newline at end of file diff --git a/ql/test/lexing/valid/test029.ql b/ql/test/lexing/valid/test029.ql new file mode 100644 index 0000000..1d37fa2 --- /dev/null +++ b/ql/test/lexing/valid/test029.ql @@ -0,0 +1,2 @@ +// Boolean literal token (false) +False
\ No newline at end of file diff --git a/ql/test/lexing/valid/test030.ql b/ql/test/lexing/valid/test030.ql new file mode 100644 index 0000000..bc70591 --- /dev/null +++ b/ql/test/lexing/valid/test030.ql @@ -0,0 +1,2 @@ +// Boolean literal token (true) +True
\ No newline at end of file diff --git a/ql/test/lexing/valid/test031.ql b/ql/test/lexing/valid/test031.ql new file mode 100644 index 0000000..106a0ad --- /dev/null +++ b/ql/test/lexing/valid/test031.ql @@ -0,0 +1,2 @@ +// Date literal token +date(1, 1, 2018)
\ No newline at end of file diff --git a/ql/test/lexing/valid/test032.ql b/ql/test/lexing/valid/test032.ql new file mode 100644 index 0000000..51cc57a --- /dev/null +++ b/ql/test/lexing/valid/test032.ql @@ -0,0 +1,2 @@ +// Date literal token +date(99, 99, 9999)
\ No newline at end of file diff --git a/ql/test/lexing/valid/test033.ql b/ql/test/lexing/valid/test033.ql new file mode 100644 index 0000000..f6a8535 --- /dev/null +++ b/ql/test/lexing/valid/test033.ql @@ -0,0 +1,2 @@ +// Decimal literal token +0.0
\ No newline at end of file diff --git a/ql/test/lexing/valid/test034.ql b/ql/test/lexing/valid/test034.ql new file mode 100644 index 0000000..15b2e6a --- /dev/null +++ b/ql/test/lexing/valid/test034.ql @@ -0,0 +1,2 @@ +// Decimal literal token +3.14
\ No newline at end of file diff --git a/ql/test/lexing/valid/test035.ql b/ql/test/lexing/valid/test035.ql new file mode 100644 index 0000000..49616a7 --- /dev/null +++ b/ql/test/lexing/valid/test035.ql @@ -0,0 +1,2 @@ +// Decimal literal token +1234567890.0987654321
\ No newline at end of file diff --git a/ql/test/lexing/valid/test036.ql b/ql/test/lexing/valid/test036.ql new file mode 100644 index 0000000..86f7a4e --- /dev/null +++ b/ql/test/lexing/valid/test036.ql @@ -0,0 +1,2 @@ +// Decimal literal token +999999999999999999999999999999999999999999999999999999999999999.999999999999999999999999999999999999999999999999999999999999999
\ No newline at end of file diff --git a/ql/test/lexing/valid/test037.ql b/ql/test/lexing/valid/test037.ql new file mode 100644 index 0000000..174d0ce --- /dev/null +++ b/ql/test/lexing/valid/test037.ql @@ -0,0 +1,2 @@ +// Integer literal token +0
\ No newline at end of file diff --git a/ql/test/lexing/valid/test038.ql b/ql/test/lexing/valid/test038.ql new file mode 100644 index 0000000..6740489 --- /dev/null +++ b/ql/test/lexing/valid/test038.ql @@ -0,0 +1,2 @@ +// Integer literal token +1234567890
\ No newline at end of file diff --git a/ql/test/lexing/valid/test039.ql b/ql/test/lexing/valid/test039.ql new file mode 100644 index 0000000..d2dbc53 --- /dev/null +++ b/ql/test/lexing/valid/test039.ql @@ -0,0 +1,2 @@ +// String literal token +"abcdefghijklmnopqrstuvwxyz"
\ No newline at end of file diff --git a/ql/test/lexing/valid/test040.ql b/ql/test/lexing/valid/test040.ql new file mode 100644 index 0000000..306582b --- /dev/null +++ b/ql/test/lexing/valid/test040.ql @@ -0,0 +1,2 @@ +// String literal token +"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
\ No newline at end of file diff --git a/ql/test/lexing/valid/test041.ql b/ql/test/lexing/valid/test041.ql new file mode 100644 index 0000000..84f0aff --- /dev/null +++ b/ql/test/lexing/valid/test041.ql @@ -0,0 +1,2 @@ +// String literal token +"1234567890"
\ No newline at end of file diff --git a/ql/test/lexing/valid/test042.ql b/ql/test/lexing/valid/test042.ql new file mode 100644 index 0000000..d389d9f --- /dev/null +++ b/ql/test/lexing/valid/test042.ql @@ -0,0 +1,2 @@ +// String literal token +"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
\ No newline at end of file diff --git a/ql/test/lexing/valid/test043.ql b/ql/test/lexing/valid/test043.ql new file mode 100644 index 0000000..6698694 --- /dev/null +++ b/ql/test/lexing/valid/test043.ql @@ -0,0 +1,2 @@ +// String literal token +"`~!@#$%*()-=_+[]\{}|;:,./<>?"
\ No newline at end of file diff --git a/ql/test/lexing/valid/test044.ql b/ql/test/lexing/valid/test044.ql new file mode 100644 index 0000000..d09b55d --- /dev/null +++ b/ql/test/lexing/valid/test044.ql @@ -0,0 +1,2 @@ +// String literal token +"\'"
\ No newline at end of file diff --git a/ql/test/lexing/valid/test045.ql b/ql/test/lexing/valid/test045.ql new file mode 100644 index 0000000..d85d414 --- /dev/null +++ b/ql/test/lexing/valid/test045.ql @@ -0,0 +1,2 @@ +// String literal token +"\""
\ No newline at end of file |