From: Kevin Day Date: Tue, 30 May 2023 01:15:55 +0000 (-0500) Subject: Progress: Add simple runtime testing scripts and testfile for fss_read. X-Git-Url: https://git.kevux.org/?a=commitdiff_plain;h=b0553b15828d77fe2b42e2d50700219a28c7d902;p=fll Progress: Add simple runtime testing scripts and testfile for fss_read. This is an incredibly basic implementation. I didn't bother to make is as flexible and portable as it could otherwise be. Provide a way to test the runtime results of the fss_read programs. I only got so far as to add tests for FSS Basic (FSS-0000) and FSS Extended (FSS-0001). The tests for the FSS Extended (FSS-0001) currently has some failures. I've noticed that I have not even implemented the --select functionality. This is the likely cause for several of the test failures. For now, I just cheated and used the 0.6.x version of the project to generate the expected output. Any bugs in that output will be matched (ideally there are no bugs). I did do a quick glance at some of these and they do look fine. The source test files are copies of files I have used in the past but never made publicly available until now. --- diff --git a/level_3/fss_read/c/main/fss_read.c b/level_3/fss_read/c/main/fss_read.c index 5ff1439..3f1b58e 100644 --- a/level_3/fss_read/c/main/fss_read.c +++ b/level_3/fss_read/c/main/fss_read.c @@ -108,7 +108,6 @@ extern "C" { if (main->setting.flag & fss_read_main_flag_object_e) { if (*line == main->setting.line) { - if (main->setting.flag & fss_read_main_flag_total_e) { fss_read_print_number(&main->program.output, 1); } diff --git a/level_3/fss_read/c/main/process_normal.c b/level_3/fss_read/c/main/process_normal.c index 1880e7a..a7aeb19 100644 --- a/level_3/fss_read/c/main/process_normal.c +++ b/level_3/fss_read/c/main/process_normal.c @@ -288,6 +288,7 @@ extern "C" { if (names[at]) { max = 1; + break; } diff --git a/level_3/fss_read/data/build/dependencies-tests b/level_3/fss_read/data/build/dependencies-tests new file mode 100644 index 0000000..6c80a9b --- /dev/null +++ b/level_3/fss_read/data/build/dependencies-tests @@ -0,0 +1,5 @@ +# fss-0001 + +bash +sed +md5sum diff --git a/level_3/fss_read/data/build/testfile b/level_3/fss_read/data/build/testfile new file mode 100644 index 0000000..48974bb --- /dev/null +++ b/level_3/fss_read/data/build/testfile @@ -0,0 +1,92 @@ +# fss-0005 iki-0002 +# +# Performs runtime testing, which includes building the program. +# +# To keep things simple, this only runs tests against fss_read. +# + +settings: + fail exit + modes individual level monolithic clang test + + environment PATH LD_LIBRARY_PATH + environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME LOCPATH NLSPATH + +main: + build settings + build settings.main + + operate build_path + operate ld_library_path + operate generate + operate verify + +generate: + print + print Generating Test 0000 for Basic (FSS-0000). + + touch directory parameter:"build_path"test/fss_0000 + run bash ./tests/runtime/script/generate.sh test-0000 tests/runtime/fss_0000/source/test-0000-quotes_and_escapes.fss parameter:"build_path"test/fss_0000 + + print + print Generating Test 0001 for Basic (FSS-0000). + run bash ./tests/runtime/script/generate.sh test-0000 tests/runtime/fss_0000/source/test-0001-unicode.fss parameter:"build_path"test/fss_0000 + + touch directory parameter:"build_path"test/fss_0001 + + print + print Generating Test 0000 for Extended (FSS-0001). + + touch directory parameter:"build_path"test/fss_0001 + run bash ./tests/runtime/script/generate.sh test-0001 tests/runtime/fss_0001/source/test-0000-quotes_and_escapes.fss parameter:"build_path"test/fss_0001 + + print + print Generating Test 0001 for Extended (FSS-0001). + run bash ./tests/runtime/script/generate.sh test-0001 tests/runtime/fss_0001/source/test-0001-unicode.fss parameter:"build_path"test/fss_0001 + +verify: + print + print Verifying Tests for Basic (FSS-0000). + run bash ./tests/runtime/script/verify.sh build/test/fss_0000/ tests/runtime/fss_0000/expect/ + + print + print Verifying Tests for Extended (FSS-0001). + run bash ./tests/runtime/script/verify.sh build/test/fss_0001/ tests/runtime/fss_0001/expect/ + +build_path: + parameter build_path build/ + + if parameter build:value + parameter build_path parameter:"build:value" + + touch directory parameter:"build_path" parameter:"build_path"test + + # Setup the PATH to use the just compiled programs. + define PATH parameter:"build_path"programs/static:parameter:"build_path"programs/shared:define:"PATH" + +ld_library_path: + if define LD_LIBRARY_PATH + and parameter work:value + define LD_LIBRARY_PATH 'parameter:"build_path"libraries/shared:parameter:"work:value"libraries/shared:define:"LD_LIBRARY_PATH"' + + else + if define LD_LIBRARY_PATH + define LD_LIBRARY_PATH 'parameter:"build_path"libraries/shared:define:"LD_LIBRARY_PATH"' + + else + if parameter work:value + define LD_LIBRARY_PATH 'parameter:"build_path"libraries/shared:parameter:"work:value"libraries/shared' + + else + define LD_LIBRARY_PATH parameter:"build_path"libraries/shared + +help: + print + print context:'title'Fakefile Options for FSS Read Software Testing.context:'reset' + + print + print The following operations are available\: + print " - context:'notable'help:context:'reset' Perform the help operation, printing this message." + print " - context:'notable'main:context:'reset' Build the main program, generate the data, and verify the tests." + print " - context:'notable'generate:context:'reset' Generate the data (main program must be built)." + print " - context:'notable'verify:context:'reset' Verify the tests (main program must be built)." diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-columns.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-columns.expect new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-columns.expect @@ -0,0 +1 @@ +1 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-0.expect new file mode 100644 index 0000000..ee14d0b --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-0.expect @@ -0,0 +1 @@ +there. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-1.expect new file mode 100644 index 0000000..30e8a65 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-1.expect @@ -0,0 +1 @@ +there diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-5.expect new file mode 100644 index 0000000..b2901ea --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-line-5.expect @@ -0,0 +1 @@ +a b diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-original.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-original.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-original.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-0.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-0.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-1.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-select-5.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-total.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-total.expect new file mode 100644 index 0000000..60d3b2f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-total.expect @@ -0,0 +1 @@ +15 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-trim.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-trim.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content-trim.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-content.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-0.expect new file mode 100644 index 0000000..b14df64 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-0.expect @@ -0,0 +1 @@ +Hi diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-1.expect new file mode 100644 index 0000000..a3c9ded --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-1.expect @@ -0,0 +1 @@ +\\hi diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-5.expect new file mode 100644 index 0000000..e16c76d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-at-5.expect @@ -0,0 +1 @@ +"" diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-columns.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-columns.expect new file mode 100644 index 0000000..573541a --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-columns.expect @@ -0,0 +1 @@ +0 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-0.expect new file mode 100644 index 0000000..b14df64 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-0.expect @@ -0,0 +1 @@ +Hi diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-1.expect new file mode 100644 index 0000000..a3c9ded --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-1.expect @@ -0,0 +1 @@ +\\hi diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-5.expect new file mode 100644 index 0000000..e16c76d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-line-5.expect @@ -0,0 +1 @@ +"" diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-original.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-original.expect new file mode 100644 index 0000000..25ede79 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-original.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\\"Hello +"\\\\\" quoted stuff." +"" +\"" +\" +"""" +"\" " +"\\\\\" sss" +"\\"\\\" xx" +"\\"\\\"" +\#not +\\#not +\\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-0.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-0.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-1.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-select-5.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-total.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-total.expect new file mode 100644 index 0000000..60d3b2f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-total.expect @@ -0,0 +1 @@ +15 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-trim.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-trim.expect new file mode 100644 index 0000000..66dcec1 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object-trim.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-0.expect new file mode 100644 index 0000000..ee4efdb --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-0.expect @@ -0,0 +1 @@ +Hi there. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-1.expect new file mode 100644 index 0000000..e58bb74 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-1.expect @@ -0,0 +1 @@ +\\hi there diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-5.expect new file mode 100644 index 0000000..ac1d799 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-at-5.expect @@ -0,0 +1 @@ +"" a b diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-columns.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-columns.expect new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-columns.expect @@ -0,0 +1 @@ +1 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-0.expect new file mode 100644 index 0000000..ee4efdb --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-0.expect @@ -0,0 +1 @@ +Hi there. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-1.expect new file mode 100644 index 0000000..e58bb74 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-1.expect @@ -0,0 +1 @@ +\\hi there diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-5.expect new file mode 100644 index 0000000..ac1d799 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-line-5.expect @@ -0,0 +1 @@ +"" a b diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-original.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-original.expect new file mode 100644 index 0000000..f249744 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-original.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\\"Hello to you." +"\\\\\" quoted stuff." and so on.. +"" zero +\"" a b +\" one +"""" c d +"\" " e f +"\\\\\" sss" there +"\\"\\\" xx" bb +"\\"\\\"" bb +\#not a comment...should have no slashes. +\\#not a comment either...should have one slash. +\\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-0.expect new file mode 100644 index 0000000..fbaf0a0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-0.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\"Hello to you." +\\" quoted stuff. and so on.. + zero +"" a b +" one +"" c d +" e f +\\" sss there +\\"\" xx bb +\\"\\\" bb +#not a comment...should have no slashes. +\#not a comment either...should have one slash. +\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-1.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-select-5.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-total.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-total.expect new file mode 100644 index 0000000..60d3b2f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-total.expect @@ -0,0 +1 @@ +15 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-trim.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-trim.expect new file mode 100644 index 0000000..513e6f3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content-trim.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\"Hello to you." +\\" quoted stuff. and so on.. + zero +"" a b +" one +"" c d +" e f +\\" sss there +\\"\" xx bb +\\"\\\" bb +#not a comment...should have no slashes. +\#not a comment either...should have one slash. +\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content.expect new file mode 100644 index 0000000..fbaf0a0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0000-quotes_and_escapes-object_and_content.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\"Hello to you." +\\" quoted stuff. and so on.. + zero +"" a b +" one +"" c d +" e f +\\" sss there +\\"\" xx bb +\\"\\\" bb +#not a comment...should have no slashes. +\#not a comment either...should have one slash. +\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-columns.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-columns.expect new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-columns.expect @@ -0,0 +1 @@ +1 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-0.expect new file mode 100644 index 0000000..7d47067 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-0.expect @@ -0,0 +1 @@ +b k d3a diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-1.expect new file mode 100644 index 0000000..60c84bb --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-1.expect @@ -0,0 +1 @@ +d zero​width diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-5.expect new file mode 100644 index 0000000..152d451 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-line-5.expect @@ -0,0 +1 @@ +space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-original.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-original.expect new file mode 100644 index 0000000..e0db8ec --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-original.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-0.expect new file mode 100644 index 0000000..e0db8ec --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-0.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-1.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-select-5.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-total.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-total.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-total.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-trim.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-trim.expect new file mode 100644 index 0000000..e0db8ec --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-trim.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content.expect new file mode 100644 index 0000000..e0db8ec --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-0.expect new file mode 100644 index 0000000..7898192 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-0.expect @@ -0,0 +1 @@ +a diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-1.expect new file mode 100644 index 0000000..f2ad6c7 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-1.expect @@ -0,0 +1 @@ +c diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-5.expect new file mode 100644 index 0000000..f331ce0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-at-5.expect @@ -0,0 +1 @@ +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-columns.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-columns.expect new file mode 100644 index 0000000..573541a --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-columns.expect @@ -0,0 +1 @@ +0 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-0.expect new file mode 100644 index 0000000..7898192 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-0.expect @@ -0,0 +1 @@ +a diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-1.expect new file mode 100644 index 0000000..f2ad6c7 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-1.expect @@ -0,0 +1 @@ +c diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-5.expect new file mode 100644 index 0000000..f331ce0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-line-5.expect @@ -0,0 +1 @@ +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-original.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-original.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-original.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-0.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-0.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-1.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-select-5.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-total.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-total.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-total.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-trim.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-trim.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object-trim.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-0.expect new file mode 100644 index 0000000..2ca45de --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-0.expect @@ -0,0 +1 @@ +a b k d3a diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-1.expect new file mode 100644 index 0000000..5bc9afa --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-1.expect @@ -0,0 +1 @@ +c d zero​width diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-5.expect new file mode 100644 index 0000000..4a4ae23 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-5.expect @@ -0,0 +1 @@ +UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-columns.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-columns.expect new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-columns.expect @@ -0,0 +1 @@ +1 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-0.expect new file mode 100644 index 0000000..2ca45de --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-0.expect @@ -0,0 +1 @@ +a b k d3a diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-1.expect new file mode 100644 index 0000000..5bc9afa --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-1.expect @@ -0,0 +1 @@ +c d zero​width diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-5.expect new file mode 100644 index 0000000..4a4ae23 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-line-5.expect @@ -0,0 +1 @@ +UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-original.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-original.expect new file mode 100644 index 0000000..61b402d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-original.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-0.expect new file mode 100644 index 0000000..61b402d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-0.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-1.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-5.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-total.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-total.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-total.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-trim.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-trim.expect new file mode 100644 index 0000000..61b402d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-trim.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content.expect b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content.expect new file mode 100644 index 0000000..61b402d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0000/source/test-0000-quotes_and_escapes.fss b/level_3/fss_read/tests/runtime/fss_0000/source/test-0000-quotes_and_escapes.fss new file mode 100644 index 0000000..dfe3c4b --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/source/test-0000-quotes_and_escapes.fss @@ -0,0 +1,21 @@ +# fss-0000 +Hi there. +\\hi there +\\\\\\"Hello to you." + +"\\\\\" quoted stuff." and so on.. + +"" zero +\"" a b +\" one +"""" c d +"\" " e f +"\\\\\" sss" there + +"\\"\\\" xx" bb +"\\"\\\"" bb + +#comment +\#not a comment...should have no slashes. +\\#not a comment either...should have one slash. +\\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0000/source/test-0001-unicode.fss b/level_3/fss_read/tests/runtime/fss_0000/source/test-0001-unicode.fss new file mode 100644 index 0000000..633d860 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0000/source/test-0001-unicode.fss @@ -0,0 +1,8 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т + +мир e␠ + spaced out + + UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-columns.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-columns.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-columns.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-0.expect new file mode 100644 index 0000000..ee14d0b --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-0.expect @@ -0,0 +1 @@ +there. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-1.expect new file mode 100644 index 0000000..30e8a65 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-1.expect @@ -0,0 +1 @@ +there diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-5.expect new file mode 100644 index 0000000..b2901ea --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-line-5.expect @@ -0,0 +1 @@ +a b diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-original.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-original.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-original.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-0.expect new file mode 100644 index 0000000..2a7892a --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-0.expect @@ -0,0 +1,15 @@ +there. +there +to +and +zero +a +one +c +e +there +bb +bb +a +a +a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-1.expect new file mode 100644 index 0000000..cb89642 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-1.expect @@ -0,0 +1,8 @@ +you." +so +b +d +f +comment...should +comment +comment diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-5.expect new file mode 100644 index 0000000..d54c2d2 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-select-5.expect @@ -0,0 +1,2 @@ +slash. +slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-total.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-total.expect new file mode 100644 index 0000000..60d3b2f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-total.expect @@ -0,0 +1 @@ +15 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-trim.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-trim.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content-trim.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content.expect new file mode 100644 index 0000000..e48f357 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-content.expect @@ -0,0 +1,15 @@ +there. +there +to you." +and so on.. +zero +a b +one +c d +e f +there +bb +bb +a comment...should have no slashes. +a comment either...should have one slash. +a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-0.expect new file mode 100644 index 0000000..b14df64 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-0.expect @@ -0,0 +1 @@ +Hi diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-1.expect new file mode 100644 index 0000000..a3c9ded --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-1.expect @@ -0,0 +1 @@ +\\hi diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-5.expect new file mode 100644 index 0000000..e16c76d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-at-5.expect @@ -0,0 +1 @@ +"" diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-columns.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-columns.expect new file mode 100644 index 0000000..573541a --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-columns.expect @@ -0,0 +1 @@ +0 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-0.expect new file mode 100644 index 0000000..b14df64 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-0.expect @@ -0,0 +1 @@ +Hi diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-1.expect new file mode 100644 index 0000000..a3c9ded --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-1.expect @@ -0,0 +1 @@ +\\hi diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-5.expect new file mode 100644 index 0000000..e16c76d --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-line-5.expect @@ -0,0 +1 @@ +"" diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-original.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-original.expect new file mode 100644 index 0000000..25ede79 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-original.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\\"Hello +"\\\\\" quoted stuff." +"" +\"" +\" +"""" +"\" " +"\\\\\" sss" +"\\"\\\" xx" +"\\"\\\"" +\#not +\\#not +\\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-0.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-0.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-1.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-1.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-100.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-100.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-5.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-select-5.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-total.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-total.expect new file mode 100644 index 0000000..60d3b2f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-total.expect @@ -0,0 +1 @@ +15 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-trim.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-trim.expect new file mode 100644 index 0000000..66dcec1 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object-trim.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object.expect new file mode 100644 index 0000000..fcd4c1e --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-0.expect new file mode 100644 index 0000000..ee4efdb --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-0.expect @@ -0,0 +1 @@ +Hi there. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-1.expect new file mode 100644 index 0000000..e58bb74 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-1.expect @@ -0,0 +1 @@ +\\hi there diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-5.expect new file mode 100644 index 0000000..ac1d799 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-at-5.expect @@ -0,0 +1 @@ +"" a b diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-columns.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-columns.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-columns.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-0.expect new file mode 100644 index 0000000..ee4efdb --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-0.expect @@ -0,0 +1 @@ +Hi there. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-1.expect new file mode 100644 index 0000000..e58bb74 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-1.expect @@ -0,0 +1 @@ +\\hi there diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-5.expect new file mode 100644 index 0000000..ac1d799 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-line-5.expect @@ -0,0 +1 @@ +"" a b diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-original.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-original.expect new file mode 100644 index 0000000..f249744 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-original.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\\"Hello to you." +"\\\\\" quoted stuff." and so on.. +"" zero +\"" a b +\" one +"""" c d +"\" " e f +"\\\\\" sss" there +"\\"\\\" xx" bb +"\\"\\\"" bb +\#not a comment...should have no slashes. +\\#not a comment either...should have one slash. +\\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-0.expect new file mode 100644 index 0000000..2c4801c --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-0.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\"Hello to +\\" quoted stuff. and + zero +"" a +" one +"" c +" e +\\" sss there +\\"\" xx bb +\\"\\\" bb +#not a +\#not a +\\#not a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-1.expect new file mode 100644 index 0000000..4c180b5 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-1.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello you." +\\" quoted stuff. so + +"" b +" +"" d +" f +\\" sss +\\"\" xx +\\"\\\" +#not comment...should +\#not comment +\\#not comment diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-100.expect new file mode 100644 index 0000000..2ce9bea --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-100.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not +\\#not diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-5.expect new file mode 100644 index 0000000..2bb26ec --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-5.expect @@ -0,0 +1,15 @@ +Hi +\\hi +\\\\\"Hello +\\" quoted stuff. + +"" +" +"" +" +\\" sss +\\"\" xx +\\"\\\" +#not +\#not slash. +\\#not slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-total.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-total.expect new file mode 100644 index 0000000..60d3b2f --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-total.expect @@ -0,0 +1 @@ +15 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-trim.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-trim.expect new file mode 100644 index 0000000..513e6f3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-trim.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\"Hello to you." +\\" quoted stuff. and so on.. + zero +"" a b +" one +"" c d +" e f +\\" sss there +\\"\" xx bb +\\"\\\" bb +#not a comment...should have no slashes. +\#not a comment either...should have one slash. +\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content.expect new file mode 100644 index 0000000..fbaf0a0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content.expect @@ -0,0 +1,15 @@ +Hi there. +\\hi there +\\\\\"Hello to you." +\\" quoted stuff. and so on.. + zero +"" a b +" one +"" c d +" e f +\\" sss there +\\"\" xx bb +\\"\\\" bb +#not a comment...should have no slashes. +\#not a comment either...should have one slash. +\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-columns.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-columns.expect new file mode 100644 index 0000000..7f8f011 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-columns.expect @@ -0,0 +1 @@ +7 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-0.expect new file mode 100644 index 0000000..7d47067 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-0.expect @@ -0,0 +1 @@ +b k d3a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-1.expect new file mode 100644 index 0000000..60c84bb --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-1.expect @@ -0,0 +1 @@ +d zero​width diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-5.expect new file mode 100644 index 0000000..3b35882 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-line-5.expect @@ -0,0 +1 @@ +space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-original.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-original.expect new file mode 100644 index 0000000..298aa00 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-original.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word "space!" diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-0.expect new file mode 100644 index 0000000..363bf18 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-0.expect @@ -0,0 +1,6 @@ +b +d +мир +e␠ +out +space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-1.expect new file mode 100644 index 0000000..0aca636 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-1.expect @@ -0,0 +1,4 @@ +k +zero​width +h +<-- diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-5.expect new file mode 100644 index 0000000..4f5b278 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-select-5.expect @@ -0,0 +1 @@ +word diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-total.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-total.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-total.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-trim.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-trim.expect new file mode 100644 index 0000000..55cb31b --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-trim.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content.expect new file mode 100644 index 0000000..55cb31b --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content.expect @@ -0,0 +1,6 @@ +b k d3a +d zero​width +мир h d3b d4b т +e␠ +out +space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-0.expect new file mode 100644 index 0000000..7898192 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-0.expect @@ -0,0 +1 @@ +a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-1.expect new file mode 100644 index 0000000..f2ad6c7 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-1.expect @@ -0,0 +1 @@ +c diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-5.expect new file mode 100644 index 0000000..f331ce0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-at-5.expect @@ -0,0 +1 @@ +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-columns.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-columns.expect new file mode 100644 index 0000000..573541a --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-columns.expect @@ -0,0 +1 @@ +0 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-0.expect new file mode 100644 index 0000000..7898192 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-0.expect @@ -0,0 +1 @@ +a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-1.expect new file mode 100644 index 0000000..f2ad6c7 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-1.expect @@ -0,0 +1 @@ +c diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-5.expect new file mode 100644 index 0000000..f331ce0 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-line-5.expect @@ -0,0 +1 @@ +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-original.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-original.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-original.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-0.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-0.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-1.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-1.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-100.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-100.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-5.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-select-5.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-total.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-total.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-total.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-trim.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-trim.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object-trim.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object.expect new file mode 100644 index 0000000..2a63ab3 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-0.expect new file mode 100644 index 0000000..2ca45de --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-0.expect @@ -0,0 +1 @@ +a b k d3a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-1.expect new file mode 100644 index 0000000..5bc9afa --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-1.expect @@ -0,0 +1 @@ +c d zero​width diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-5.expect new file mode 100644 index 0000000..a012a2c --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-5.expect @@ -0,0 +1 @@ +UTF space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-columns.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-columns.expect new file mode 100644 index 0000000..7f8f011 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-columns.expect @@ -0,0 +1 @@ +7 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-0.expect new file mode 100644 index 0000000..2ca45de --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-0.expect @@ -0,0 +1 @@ +a b k d3a diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-1.expect new file mode 100644 index 0000000..5bc9afa --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-1.expect @@ -0,0 +1 @@ +c d zero​width diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-100.expect new file mode 100644 index 0000000..e69de29 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-5.expect new file mode 100644 index 0000000..a012a2c --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-line-5.expect @@ -0,0 +1 @@ +UTF space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-original.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-original.expect new file mode 100644 index 0000000..011f926 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-original.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word "space!" diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-0.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-0.expect new file mode 100644 index 0000000..3d33130 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-0.expect @@ -0,0 +1,6 @@ +a b +c d +привет мир +мир e␠ +spaced out +UTF space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-1.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-1.expect new file mode 100644 index 0000000..165a425 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-1.expect @@ -0,0 +1,6 @@ +a k +c zero​width +привет h +мир +spaced +UTF <-- diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-100.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-100.expect new file mode 100644 index 0000000..caa6aca --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-100.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-5.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-5.expect new file mode 100644 index 0000000..c6b70b4 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-5.expect @@ -0,0 +1,6 @@ +a +c +привет +мир +spaced +UTF word diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-total.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-total.expect new file mode 100644 index 0000000..1e8b314 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-total.expect @@ -0,0 +1 @@ +6 diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-trim.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-trim.expect new file mode 100644 index 0000000..a6384b9 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-trim.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content.expect b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content.expect new file mode 100644 index 0000000..a6384b9 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content.expect @@ -0,0 +1,6 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т +мир e␠ +spaced out +UTF space! <-- should have the word space! diff --git a/level_3/fss_read/tests/runtime/fss_0001/source/test-0000-quotes_and_escapes.fss b/level_3/fss_read/tests/runtime/fss_0001/source/test-0000-quotes_and_escapes.fss new file mode 100644 index 0000000..dfe3c4b --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/source/test-0000-quotes_and_escapes.fss @@ -0,0 +1,21 @@ +# fss-0000 +Hi there. +\\hi there +\\\\\\"Hello to you." + +"\\\\\" quoted stuff." and so on.. + +"" zero +\"" a b +\" one +"""" c d +"\" " e f +"\\\\\" sss" there + +"\\"\\\" xx" bb +"\\"\\\"" bb + +#comment +\#not a comment...should have no slashes. +\\#not a comment either...should have one slash. +\\\#not a comment either...should have two slashes. diff --git a/level_3/fss_read/tests/runtime/fss_0001/source/test-0001-unicode.fss b/level_3/fss_read/tests/runtime/fss_0001/source/test-0001-unicode.fss new file mode 100644 index 0000000..633d860 --- /dev/null +++ b/level_3/fss_read/tests/runtime/fss_0001/source/test-0001-unicode.fss @@ -0,0 +1,8 @@ +a b k d3a +c d zero​width +привет мир h d3b d4b т + +мир e␠ + spaced out + + UTF space! <-- should have the word 'space!' diff --git a/level_3/fss_read/tests/runtime/script/generate.sh b/level_3/fss_read/tests/runtime/script/generate.sh new file mode 100644 index 0000000..3d5c901 --- /dev/null +++ b/level_3/fss_read/tests/runtime/script/generate.sh @@ -0,0 +1,566 @@ +#!/bin.bash +# license: lgpl-2.1-or-later +# programmer: Kevin Day +# +# Helper script for manually generating tests. +# +# This is a simple script that only accepts these arguments in this specific order: +# 1) The standard, using the 4-digit standard hexidecimal number (may also prepend "test-" to use 'fss_read -A'). +# 2) The source file to read. +# 3) The destination directory to write to. +# +# Tests using the -n/--name will need to be manually created. +# +# Note: Either update this script to pass "+FL" as an argument or manually remove the leading/trailing new lines. +# Alternatively, once fss_read is complete and working, rewrite this to require fss_read. +# + +generate_main() { + local standard="${1}" + local file_source="${2}" + local path_destination="${3}" + local failure=0 + local test_base= + local test_current= + + if [[ $standard == "" ]] ; then + echo "ERROR: No standard specified." + + return 1 + fi + + if [[ $file_source == "" ]] ; then + echo "ERROR: No source file specified." + + return 1 + fi + + if [[ $path_destination == "" ]] ; then + echo "ERROR: No destination path specified." + + return 1 + fi + + file_source=$(echo ${file_source} | sed -e 's|^//*|/|' -e 's|//*|/|' -e 's|/*$||') + path_destination=$(echo ${path_destination} | sed -e 's|^//*|/|' -e 's|/*$|/|') + + if [[ ! -f ${file_source} ]] ; then + echo "ERROR: The source file '${file_source}' either does not exist or is not a file." + + return 1 + fi + + if [[ ! -d ${path_destination} ]] ; then + echo "ERROR: The destination path '${path_destination}' either does not exist or is not a directory." + + return 1 + fi + + test_base=$(echo $file_source | sed -e 's|.*/||g' -e 's|\..*$||') + test_current="${path_destination}${test_base}-" + + if [[ ${1} == "0000" ]] ; then + generate_operate_0000 + elif [[ ${1} == "0001" ]] ; then + generate_operate_0001 + elif [[ ${1} == "0002" ]] ; then + generate_operate_0002 + elif [[ ${1} == "0003" ]] ; then + generate_operate_0003 + elif [[ ${1} == "0008" ]] ; then + generate_operate_0008 + elif [[ ${1} == "000e" ]] ; then + generate_operate_000e + elif [[ ${1} == "test-0000" ]] ; then + generate_operate_test_standard + elif [[ ${1} == "test-0001" ]] ; then + generate_operate_test_standard + elif [[ ${1} == "test-0002" ]] ; then + generate_operate_test_standard + elif [[ ${1} == "test-0003" ]] ; then + generate_operate_test_standard + elif [[ ${1} == "test-0008" ]] ; then + generate_operate_test_standard + elif [[ ${1} == "test-000e" ]] ; then + generate_operate_test_standard + fi + + if [[ ${failure} -eq 1 ]] ; then + return 1 + fi + + return 0 +} + +generate_operate_0000() { + + fss_basic_read +n -c ${file_source} > ${test_current}content.expect && + fss_basic_read +n -cO ${file_source} > ${test_current}content-original.expect && + fss_basic_read +n -ct ${file_source} > ${test_current}content-total.expect && + fss_basic_read +n -cT ${file_source} > ${test_current}content-trim.expect && + fss_basic_read +n -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_basic_read +n -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_basic_read +n -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_basic_read +n -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_basic_read +n -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_basic_read +n -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_basic_read +n -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_basic_read +n -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_basic_read +n -cC ${file_source} > ${test_current}content-columns.expect && + fss_basic_read +n -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_basic_read +n -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_basic_read +n -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_basic_read +n -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_basic_read +n -o ${file_source} > ${test_current}object.expect && + fss_basic_read +n -oO ${file_source} > ${test_current}object-original.expect && + fss_basic_read +n -ot ${file_source} > ${test_current}object-total.expect && + fss_basic_read +n -oT ${file_source} > ${test_current}object-trim.expect && + fss_basic_read +n -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_basic_read +n -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_basic_read +n -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_basic_read +n -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_basic_read +n -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_basic_read +n -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_basic_read +n -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_basic_read +n -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_basic_read +n -oC ${file_source} > ${test_current}object-columns.expect && + fss_basic_read +n -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_basic_read +n -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_basic_read +n -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_basic_read +n -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_basic_read +n -oc ${file_source} > ${test_current}object_and_content.expect && + fss_basic_read +n -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_basic_read +n -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_basic_read +n -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_basic_read +n -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_basic_read +n -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_basic_read +n -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_basic_read +n -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_basic_read +n -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_basic_read +n -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_basic_read +n -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_basic_read +n -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_basic_read +n -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_basic_read +n -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_basic_read +n -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_basic_read +n -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_basic_read +n -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation Complete" + + if [[ $? -ne 0 ]] ; then + let failure=0 + fi + + return $failure +} + +generate_operate_0001() { + + fss_extended_read +n -c ${file_source} > ${test_current}content.expect && + fss_extended_read +n -cO ${file_source} > ${test_current}content-original.expect && + fss_extended_read +n -ct ${file_source} > ${test_current}content-total.expect && + fss_extended_read +n -cT ${file_source} > ${test_current}content-trim.expect && + fss_extended_read +n -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_extended_read +n -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_extended_read +n -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_extended_read +n -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_extended_read +n -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_extended_read +n -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_extended_read +n -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_extended_read +n -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_extended_read +n -cC ${file_source} > ${test_current}content-columns.expect && + fss_extended_read +n -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_extended_read +n -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_extended_read +n -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_extended_read +n -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_extended_read +n -o ${file_source} > ${test_current}object.expect && + fss_extended_read +n -oO ${file_source} > ${test_current}object-original.expect && + fss_extended_read +n -ot ${file_source} > ${test_current}object-total.expect && + fss_extended_read +n -oT ${file_source} > ${test_current}object-trim.expect && + fss_extended_read +n -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_extended_read +n -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_extended_read +n -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_extended_read +n -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_extended_read +n -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_extended_read +n -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_extended_read +n -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_extended_read +n -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_extended_read +n -oC ${file_source} > ${test_current}object-columns.expect && + fss_extended_read +n -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_extended_read +n -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_extended_read +n -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_extended_read +n -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_extended_read +n -oc ${file_source} > ${test_current}object_and_content.expect && + fss_extended_read +n -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_extended_read +n -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_extended_read +n -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_extended_read +n -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_extended_read +n -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_extended_read +n -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_extended_read +n -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_extended_read +n -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_extended_read +n -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_extended_read +n -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_extended_read +n -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_extended_read +n -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_extended_read +n -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_extended_read +n -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_extended_read +n -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_extended_read +n -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation Complete" + + if [[ $? -ne 0 ]] ; then + let failure=0 + fi + + return $failure +} + +generate_operate_0002() { + + fss_basic_list_read +n -c ${file_source} > ${test_current}content.expect && + fss_basic_list_read +n -cO ${file_source} > ${test_current}content-original.expect && + fss_basic_list_read +n -ct ${file_source} > ${test_current}content-total.expect && + fss_basic_list_read +n -cT ${file_source} > ${test_current}content-trim.expect && + fss_basic_list_read +n -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_basic_list_read +n -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_basic_list_read +n -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_basic_list_read +n -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_basic_list_read +n -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_basic_list_read +n -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_basic_list_read +n -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_basic_list_read +n -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_basic_list_read +n -cC ${file_source} > ${test_current}content-columns.expect && + fss_basic_list_read +n -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_basic_list_read +n -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_basic_list_read +n -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_basic_list_read +n -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_basic_list_read +n -o ${file_source} > ${test_current}object.expect && + fss_basic_list_read +n -oO ${file_source} > ${test_current}object-original.expect && + fss_basic_list_read +n -ot ${file_source} > ${test_current}object-total.expect && + fss_basic_list_read +n -oT ${file_source} > ${test_current}object-trim.expect && + fss_basic_list_read +n -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_basic_list_read +n -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_basic_list_read +n -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_basic_list_read +n -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_basic_list_read +n -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_basic_list_read +n -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_basic_list_read +n -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_basic_list_read +n -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_basic_list_read +n -oC ${file_source} > ${test_current}object-columns.expect && + fss_basic_list_read +n -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_basic_list_read +n -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_basic_list_read +n -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_basic_list_read +n -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_basic_list_read +n -oc ${file_source} > ${test_current}object_and_content.expect && + fss_basic_list_read +n -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_basic_list_read +n -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_basic_list_read +n -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_basic_list_read +n -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_basic_list_read +n -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_basic_list_read +n -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_basic_list_read +n -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_basic_list_read +n -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_basic_list_read +n -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_basic_list_read +n -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_basic_list_read +n -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_basic_list_read +n -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_basic_list_read +n -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_basic_list_read +n -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_basic_list_read +n -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_basic_list_read +n -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation Complete" + + if [[ $? -ne 0 ]] ; then + let failure=0 + fi + + return $failure +} + +generate_operate_0003() { + + fss_extended_list_read +n -c ${file_source} > ${test_current}content.expect && + fss_extended_list_read +n -cO ${file_source} > ${test_current}content-original.expect && + fss_extended_list_read +n -ct ${file_source} > ${test_current}content-total.expect && + fss_extended_list_read +n -cT ${file_source} > ${test_current}content-trim.expect && + fss_extended_list_read +n -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_extended_list_read +n -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_extended_list_read +n -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_extended_list_read +n -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_extended_list_read +n -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_extended_list_read +n -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_extended_list_read +n -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_extended_list_read +n -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_extended_list_read +n -cC ${file_source} > ${test_current}content-columns.expect && + fss_extended_list_read +n -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_extended_list_read +n -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_extended_list_read +n -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_extended_list_read +n -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_extended_list_read +n -o ${file_source} > ${test_current}object.expect && + fss_extended_list_read +n -oO ${file_source} > ${test_current}object-original.expect && + fss_extended_list_read +n -ot ${file_source} > ${test_current}object-total.expect && + fss_extended_list_read +n -oT ${file_source} > ${test_current}object-trim.expect && + fss_extended_list_read +n -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_extended_list_read +n -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_extended_list_read +n -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_extended_list_read +n -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_extended_list_read +n -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_extended_list_read +n -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_extended_list_read +n -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_extended_list_read +n -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_extended_list_read +n -oC ${file_source} > ${test_current}object-columns.expect && + fss_extended_list_read +n -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_extended_list_read +n -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_extended_list_read +n -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_extended_list_read +n -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_extended_list_read +n -oc ${file_source} > ${test_current}object_and_content.expect && + fss_extended_list_read +n -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_extended_list_read +n -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_extended_list_read +n -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_extended_list_read +n -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_extended_list_read +n -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_extended_list_read +n -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_extended_list_read +n -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_extended_list_read +n -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_extended_list_read +n -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_extended_list_read +n -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_extended_list_read +n -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_extended_list_read +n -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_extended_list_read +n -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_extended_list_read +n -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_extended_list_read +n -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_extended_list_read +n -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation Complete" + + if [[ $? -ne 0 ]] ; then + let failure=0 + fi + + return $failure +} + +generate_operate_0008() { + + fss_embedded_list_read +n -c ${file_source} > ${test_current}content.expect && + fss_embedded_list_read +n -cO ${file_source} > ${test_current}content-original.expect && + fss_embedded_list_read +n -ct ${file_source} > ${test_current}content-total.expect && + fss_embedded_list_read +n -cT ${file_source} > ${test_current}content-trim.expect && + fss_embedded_list_read +n -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_embedded_list_read +n -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_embedded_list_read +n -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_embedded_list_read +n -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_embedded_list_read +n -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_embedded_list_read +n -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_embedded_list_read +n -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_embedded_list_read +n -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_embedded_list_read +n -cC ${file_source} > ${test_current}content-columns.expect && + fss_embedded_list_read +n -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_embedded_list_read +n -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_embedded_list_read +n -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_embedded_list_read +n -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_embedded_list_read +n -o ${file_source} > ${test_current}object.expect && + fss_embedded_list_read +n -oO ${file_source} > ${test_current}object-original.expect && + fss_embedded_list_read +n -ot ${file_source} > ${test_current}object-total.expect && + fss_embedded_list_read +n -oT ${file_source} > ${test_current}object-trim.expect && + fss_embedded_list_read +n -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_embedded_list_read +n -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_embedded_list_read +n -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_embedded_list_read +n -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_embedded_list_read +n -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_embedded_list_read +n -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_embedded_list_read +n -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_embedded_list_read +n -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_embedded_list_read +n -oC ${file_source} > ${test_current}object-columns.expect && + fss_embedded_list_read +n -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_embedded_list_read +n -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_embedded_list_read +n -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_embedded_list_read +n -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_embedded_list_read +n -oc ${file_source} > ${test_current}object_and_content.expect && + fss_embedded_list_read +n -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_embedded_list_read +n -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_embedded_list_read +n -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_embedded_list_read +n -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_embedded_list_read +n -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_embedded_list_read +n -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_embedded_list_read +n -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_embedded_list_read +n -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_embedded_list_read +n -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_embedded_list_read +n -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_embedded_list_read +n -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_embedded_list_read +n -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_embedded_list_read +n -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_embedded_list_read +n -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_embedded_list_read +n -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_embedded_list_read +n -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation Complete" + + if [[ $? -ne 0 ]] ; then + let failure=0 + fi + + return $failure +} + +generate_operate_000e() { + + fss_payload_read +n -c ${file_source} > ${test_current}content.expect && + fss_payload_read +n -cO ${file_source} > ${test_current}content-original.expect && + fss_payload_read +n -ct ${file_source} > ${test_current}content-total.expect && + fss_payload_read +n -cT ${file_source} > ${test_current}content-trim.expect && + fss_payload_read +n -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_payload_read +n -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_payload_read +n -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_payload_read +n -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_payload_read +n -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_payload_read +n -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_payload_read +n -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_payload_read +n -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_payload_read +n -cC ${file_source} > ${test_current}content-columns.expect && + fss_payload_read +n -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_payload_read +n -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_payload_read +n -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_payload_read +n -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_payload_read +n -o ${file_source} > ${test_current}object.expect && + fss_payload_read +n -oO ${file_source} > ${test_current}object-original.expect && + fss_payload_read +n -ot ${file_source} > ${test_current}object-total.expect && + fss_payload_read +n -oT ${file_source} > ${test_current}object-trim.expect && + fss_payload_read +n -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_payload_read +n -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_payload_read +n -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_payload_read +n -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_payload_read +n -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_payload_read +n -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_payload_read +n -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_payload_read +n -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_payload_read +n -oC ${file_source} > ${test_current}object-columns.expect && + fss_payload_read +n -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_payload_read +n -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_payload_read +n -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_payload_read +n -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_payload_read +n -oc ${file_source} > ${test_current}object_and_content.expect && + fss_payload_read +n -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_payload_read +n -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_payload_read +n -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_payload_read +n -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_payload_read +n -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_payload_read +n -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_payload_read +n -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_payload_read +n -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_payload_read +n -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_payload_read +n -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_payload_read +n -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_payload_read +n -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_payload_read +n -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_payload_read +n -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_payload_read +n -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_payload_read +n -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation Complete" + + if [[ $? -ne 0 ]] ; then + let failure=0 + fi + + return $failure +} + +generate_operate_test_standard() { + standard=$(echo "${standard}" | sed -e 's|^test-||') + + fss_read +FLn -A ${standard} -c ${file_source} > ${test_current}content.expect && + fss_read +FLn -A ${standard} -cO ${file_source} > ${test_current}content-original.expect && + fss_read +FLn -A ${standard} -ct ${file_source} > ${test_current}content-total.expect && + fss_read +FLn -A ${standard} -cT ${file_source} > ${test_current}content-trim.expect && + fss_read +FLn -A ${standard} -cl 0 ${file_source} > ${test_current}content-line-0.expect && + fss_read +FLn -A ${standard} -cl 1 ${file_source} > ${test_current}content-line-1.expect && + fss_read +FLn -A ${standard} -cl 5 ${file_source} > ${test_current}content-line-5.expect && + fss_read +FLn -A ${standard} -cl 100 ${file_source} > ${test_current}content-line-100.expect && + fss_read +FLn -A ${standard} -cs 0 ${file_source} > ${test_current}content-select-0.expect && + fss_read +FLn -A ${standard} -cs 1 ${file_source} > ${test_current}content-select-1.expect && + fss_read +FLn -A ${standard} -cs 5 ${file_source} > ${test_current}content-select-5.expect && + fss_read +FLn -A ${standard} -cs 100 ${file_source} > ${test_current}content-select-100.expect && + fss_read +FLn -A ${standard} -cC ${file_source} > ${test_current}content-columns.expect && + fss_read +FLn -A ${standard} -ca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_read +FLn -A ${standard} -ca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_read +FLn -A ${standard} -ca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_read +FLn -A ${standard} -ca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + fss_read +FLn -A ${standard} -o ${file_source} > ${test_current}object.expect && + fss_read +FLn -A ${standard} -oO ${file_source} > ${test_current}object-original.expect && + fss_read +FLn -A ${standard} -ot ${file_source} > ${test_current}object-total.expect && + fss_read +FLn -A ${standard} -oT ${file_source} > ${test_current}object-trim.expect && + fss_read +FLn -A ${standard} -ol 0 ${file_source} > ${test_current}object-line-0.expect && + fss_read +FLn -A ${standard} -ol 1 ${file_source} > ${test_current}object-line-1.expect && + fss_read +FLn -A ${standard} -ol 5 ${file_source} > ${test_current}object-line-5.expect && + fss_read +FLn -A ${standard} -ol 100 ${file_source} > ${test_current}object-line-100.expect && + fss_read +FLn -A ${standard} -os 0 ${file_source} > ${test_current}object-select-0.expect && + fss_read +FLn -A ${standard} -os 1 ${file_source} > ${test_current}object-select-1.expect && + fss_read +FLn -A ${standard} -os 5 ${file_source} > ${test_current}object-select-5.expect && + fss_read +FLn -A ${standard} -os 100 ${file_source} > ${test_current}object-select-100.expect && + fss_read +FLn -A ${standard} -oC ${file_source} > ${test_current}object-columns.expect && + fss_read +FLn -A ${standard} -oa 0 ${file_source} > ${test_current}object-at-0.expect && + fss_read +FLn -A ${standard} -oa 1 ${file_source} > ${test_current}object-at-1.expect && + fss_read +FLn -A ${standard} -oa 5 ${file_source} > ${test_current}object-at-5.expect && + fss_read +FLn -A ${standard} -oa 100 ${file_source} > ${test_current}object-at-100.expect && + + fss_read +FLn -A ${standard} -oc ${file_source} > ${test_current}object_and_content.expect && + fss_read +FLn -A ${standard} -ocO ${file_source} > ${test_current}object_and_content-original.expect && + fss_read +FLn -A ${standard} -oct ${file_source} > ${test_current}object_and_content-total.expect && + fss_read +FLn -A ${standard} -ocT ${file_source} > ${test_current}object_and_content-trim.expect && + fss_read +FLn -A ${standard} -ocl 0 ${file_source} > ${test_current}object_and_content-line-0.expect && + fss_read +FLn -A ${standard} -ocl 1 ${file_source} > ${test_current}object_and_content-line-1.expect && + fss_read +FLn -A ${standard} -ocl 5 ${file_source} > ${test_current}object_and_content-line-5.expect && + fss_read +FLn -A ${standard} -ocl 100 ${file_source} > ${test_current}object_and_content-line-100.expect && + fss_read +FLn -A ${standard} -ocs 0 ${file_source} > ${test_current}object_and_content-select-0.expect && + fss_read +FLn -A ${standard} -ocs 1 ${file_source} > ${test_current}object_and_content-select-1.expect && + fss_read +FLn -A ${standard} -ocs 5 ${file_source} > ${test_current}object_and_content-select-5.expect && + fss_read +FLn -A ${standard} -ocs 100 ${file_source} > ${test_current}object_and_content-select-100.expect && + fss_read +FLn -A ${standard} -ocC ${file_source} > ${test_current}object_and_content-columns.expect && + fss_read +FLn -A ${standard} -oca 0 ${file_source} > ${test_current}object_and_content-at-0.expect && + fss_read +FLn -A ${standard} -oca 1 ${file_source} > ${test_current}object_and_content-at-1.expect && + fss_read +FLn -A ${standard} -oca 5 ${file_source} > ${test_current}object_and_content-at-5.expect && + fss_read +FLn -A ${standard} -oca 100 ${file_source} > ${test_current}object_and_content-at-100.expect && + + echo "Generation complete." + + if [[ $? -ne 0 ]] ; then + let failure=1 + + echo "Generation failed." + fi + + return $failure +} + +generate_cleanup() { + + unset generate_main + unset generate_operate_0000 + unset generate_operate_0001 + unset generate_operate_0002 + unset generate_operate_0003 + unset generate_operate_0008 + unset generate_operate_000e + unset generate_operate_test_standard + unset generate_cleanup +} + +generate_main $* diff --git a/level_3/fss_read/tests/runtime/script/verify.sh b/level_3/fss_read/tests/runtime/script/verify.sh new file mode 100644 index 0000000..de43375 --- /dev/null +++ b/level_3/fss_read/tests/runtime/script/verify.sh @@ -0,0 +1,122 @@ +#!/bin.bash +# license: lgpl-2.1-or-later +# programmer: Kevin Day +# +# Helper script for manually verifying tests. +# +# This is a simple script that only accepts these arguments in this specific order: +# 1) The build path containing the program output files for each test. +# 2) The expect path containing the generated and expected program output files for each test to match against. +# +# Note: Either update this script to pass "+FL" as an argument or manually remove the leading/trailing new lines. +# + +verify_main() { + local path_build="${1}" + local path_expect="${2}" + local failure=0 + local basename_file= + local hash_build= + local hash_expect= + + if [[ $path_build == "" ]] ; then + echo "ERROR: No build path specified." + + return 1 + fi + + if [[ $path_expect == "" ]] ; then + echo "ERROR: No expect path specified." + + return 1 + fi + + path_build=$(echo ${path_build} | sed -e 's|^//*|/|' -e 's|/*$|/|') + path_expect=$(echo ${path_expect} | sed -e 's|^//*|/|' -e 's|/*$|/|') + + if [[ ! -d ${path_build} ]] ; then + echo "ERROR: The build path '${path_build}' either does not exist or is not a directory." + + return 1 + fi + + if [[ ! -d ${path_expect} ]] ; then + echo "ERROR: The expect path '${path_expect}' either does not exist or is not a directory." + + return 1 + fi + + verify_operate_test_standard + + if [[ ${failure} -eq 1 ]] ; then + return 1 + fi + + return 0 +} + +verify_operate_test_standard() { + + for i in ${path_build}* ; do + + basename_file=$(basename ${i}) + + if [[ $? -ne 0 ]] ; then + echo "ERROR: basename ${i} failed." + + let failure=1 + + break + fi + + hash_build=$(md5sum ${path_build}${basename_file} | sed -e 's| .*$||') + + if [[ $? -ne 0 ]] ; then + echo "ERROR: md5sum ${path_build}${basename_file} | sed -e 's| .*$||' failed." + + let failure=1 + + break + fi + + hash_expect=$(md5sum ${path_expect}${basename_file} | sed -e 's| .*$||') + + if [[ $? -ne 0 ]] ; then + echo "ERROR: md5sum ${path_expect}${basename_file} | sed -e 's| .*$||' failed." + + let failure=1 + + break + fi + + basename_file=$(echo -n ${basename_file} | sed -e 's|\.expect$||') + + if [[ $hash_build == $hash_expect ]] ; then + echo "[ Success ] = ${basename_file}." + else + echo "[ Failure ] = ${basename_file}." + + let failure=1 + fi + + done + + echo + + if [[ $failure -eq 1 ]] ; then + echo "Failure! Some or all tests failed." + else + echo "Success! All tests passed." + fi + + return $failure +} + +verify_cleanup() { + + unset verify_main + unset verify_operate_test_standard + unset verify_cleanup +} + +verify_main $*