]> Kevux Git Server - fll/commit
Update: Improve FSS Read function correctness based on runtime unit tests.
authorKevin Day <Kevin@kevux.org>
Sun, 18 Aug 2024 01:09:30 +0000 (20:09 -0500)
committerKevin Day <Kevin@kevux.org>
Sun, 18 Aug 2024 01:57:40 +0000 (20:57 -0500)
commitc5d4d6c327027b89e970ec99f8bb2989ba5bcfb1
tree259ec5806718cb8cf94299c9dea42933b19a6d5f
parent31d6eaf3ca2e39d23ccd55a43f7375965641277d
Update: Improve FSS Read function correctness based on runtime unit tests.

This improves the runtime unit tests to be more correct as per the standard.
The standard allows for spaces after an Object.

There is no reason to print these extra spaces.
Add additional logic to better handle this behavior.

The FSS Basic Read and FSS Extended Read should not print this extra space after the Object when there is no Content to be printed.

The pipe mode should wrap empty Content with the start and end pipe characters.
This pope mode is still not well tested (or reviewed) and will eventually need further review and runtime tests.

The handling of `--empty` should only apply to when there is empty Content and not when there is no Content at all.

This adds new callback and flags to better handle these situations.

Update the `verify.sh` script (and associated `testfile`) to print the test name.
Update the `generate.sh` and `verify.sh` scripts to safely pass arguments with spaces using `"$@"`.
65 files changed:
level_3/fss_read/c/basic/main.c
level_3/fss_read/c/basic/print.c
level_3/fss_read/c/basic/print.h
level_3/fss_read/c/basic_list/main.c
level_3/fss_read/c/basic_list/print.c
level_3/fss_read/c/basic_list/print.h
level_3/fss_read/c/embedded_list/main.c
level_3/fss_read/c/embedded_list/print.c
level_3/fss_read/c/embedded_list/print.h
level_3/fss_read/c/extended/main.c
level_3/fss_read/c/extended/print.c
level_3/fss_read/c/extended/print.h
level_3/fss_read/c/extended_list/main.c
level_3/fss_read/c/extended_list/print.c
level_3/fss_read/c/extended_list/print.h
level_3/fss_read/c/main/common/define.h
level_3/fss_read/c/main/common/type.h
level_3/fss_read/c/main/main.c
level_3/fss_read/c/main/print/data.c
level_3/fss_read/c/main/print/data.h
level_3/fss_read/c/main/process_normal.c
level_3/fss_read/c/payload/main.c
level_3/fss_read/c/payload/print.c
level_3/fss_read/c/payload/print.h
level_3/fss_read/data/build/testfile
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-content-name-hi-select-0-empty.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-at-6.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-name-hi-select-0-empty.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-name-hi-select-0.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-name-hi.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-original.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-select-0.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content-trim.expect
level_3/fss_read/tests/runtime/fss_0000/expect/test-0001-unicode-object_and_content.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-name--select-1.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-name-a-select-100.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-name-a-select-2.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-name-a-select-5.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-name-a-select-6.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-1.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-100.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-5.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0000-quotes_and_escapes-object_and_content-select-6.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-content-name-hi-select-0-empty.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-at-6.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-a-select-100.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-a-select-2.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-a-select-5.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-a-select-6.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-hi-select-0-empty.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-hi-select-0.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-hi-select-1-empty.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-hi-select-1.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-hi.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-name-мир-select-1.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-original.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-0.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-1.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-100.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-5.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-select-6.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content-trim.expect
level_3/fss_read/tests/runtime/fss_0001/expect/test-0001-unicode-object_and_content.expect
level_3/fss_read/tests/runtime/script/generate.sh
level_3/fss_read/tests/runtime/script/verify.sh