From: Ingy döt Net Date: Thu, 9 Feb 2017 16:00:35 +0000 (+0100) Subject: Switch test-suite run list from black to whitelist X-Git-Tag: upstream/0.2.1^2~23 X-Git-Url: http://andersk.mit.edu/gitweb/libyaml.git/commitdiff_plain/c9878e19bdd9e6a0af55c1b420d4e941b28ed6c6 Switch test-suite run list from black to whitelist This way as the test suite grows, new tests won't disturb/break our testing. --- diff --git a/tests/run-test-suite/test/libyaml-emitter.list b/tests/run-test-suite/test/libyaml-emitter.list new file mode 100644 index 0000000..97e2804 --- /dev/null +++ b/tests/run-test-suite/test/libyaml-emitter.list @@ -0,0 +1,127 @@ +229Q: Spec Example 2.4. Sequence of Mappings +2AUY: Tags in Block Sequence +3ALJ: Block Sequence in Block Sequence +3GZX: Spec Example 7.1. Alias Nodes +4CQQ: Spec Example 2.18. Multi-line Flow Scalars +4GC6: Spec Example 7.7. Single Quoted Characters +4UYU: Colon in Double Quoted String +4ZYM: Spec Example 6.4. Line Prefixes +54T7: Flow Mapping +57H4: Spec Example 8.22. Block Collection Nodes +5BVJ: Spec Example 5.7. Block Scalar Indicators +5C5M: Spec Example 7.15. Flow Mappings +5GBF: Spec Example 6.5. Empty Lines +5KJE: Spec Example 7.13. Flow Sequence +5NYZ: Spec Example 6.9. Separated Comment +65WH: Single Entry Block Sequence +6FWR: Block Scalar Keep +6HB6: Spec Example 6.1. Indentation Spaces +6JQW: Spec Example 2.13. In literals, newlines are preserved +6JWB: Tags for Block Objects +6VJK: Spec Example 2.15. Folded newlines are preserved for "more indented" and blank lines +735Y: Spec Example 8.20. Block Node Types +74H7: Tags in Implicit Mapping +77H8: Spec Example 2.23. Various Explicit Tags +7A4E: Spec Example 7.6. Double Quoted Lines +7BUB: Spec Example 2.10. Node for “Sammy Sosa” appears twice in this document +7FWL: Spec Example 6.24. Verbatim Tags +7T8X: Spec Example 8.10. Folded Lines - 8.13. Final Empty Lines +87E4: Spec Example 7.8. Single Quoted Implicit Keys +8G76: Spec Example 6.10. Comment Lines +8QBE: Block Sequence in Block Mapping +8UDB: Spec Example 7.14. Flow Sequence Entries +93JH: Block Mappings in Block Sequence +96L6: Spec Example 2.14. In the folded scalars, newlines become spaces +98YD: Spec Example 5.5. Comment Indicator +9FMG: Multi-level Mapping Indent +9J7A: Simple Mapping Indent +9SHH: Spec Example 5.8. Quoted Scalar Indicators +9U5K: Spec Example 2.12. Compact Nested Mapping +9WXW: Spec Example 6.18. Primary Tag Handle +9YRD: Multiline Scalar at Top Level +A2M4: Spec Example 6.2. Indentation Indicators +A6F9: Spec Example 8.4. Chomping Final Line Break +A984: Multiline Scalar in Mapping +AVM7: Empty Stream +AZ63: Sequence With Same Indentation as Parent Mapping +AZW3: Lookahead test cases +BEC7: Spec Example 6.14. “YAML” directive +C4HZ: Spec Example 2.24. Global Tags +CC74: Spec Example 6.20. Tag Handles +CT4Q: Spec Example 7.20. Single Pair Explicit Entry +CUP7: Spec Example 5.6. Node Property Indicators +D88J: Flow Sequence in Block Mapping +D9TU: Single Pair Block Mapping +DBG4: Spec Example 7.10. Plain Characters +DHP8: Flow Sequence +DWX9: Spec Example 8.8. Literal Content +E76Z: Aliases in Implicit Block Mapping +EHF6: Tags for Flow Objects +F2C7: Anchors and Tags +F8F9: Spec Example 8.5. Chomping Trailing Lines +FQ7F: Spec Example 2.1. Sequence of Scalars +FUP4: Flow Sequence in Flow Sequence +G4RS: Spec Example 2.17. Quoted Scalars +G992: Spec Example 8.9. Folded Scalar +GH63: Mixed Block Mapping (explicit to implicit) +H2RW: Blank lines +HMK4: Spec Example 2.16. Indentation determines scope +HMQ5: Spec Example 6.23. Node Properties +HS5T: Spec Example 7.12. Plain Lines +J3BT: Spec Example 5.12. Tabs and Spaces +J5UC: Multiple Pair Block Mapping +J7PZ: Spec Example 2.26. Ordered Mappings +J7VC: Empty Lines Between Mapping Elements +J9HZ: Spec Example 2.9. Single Document with Two Comments +JHB9: Spec Example 2.7. Two Documents in a Stream +JQ4R: Spec Example 8.14. Block Sequence +JS2J: Spec Example 6.29. Node Anchors +K4SU: Multiple Entry Block Sequence +K527: Spec Example 6.6. Line Folding +K858: Spec Example 8.6. Empty Scalar Chomping +KMK3: Block Submapping +L94M: Tags in Explicit Mapping +L9U5: Spec Example 7.11. Plain Implicit Keys +LP6E: Whitespace After Scalars in Flow +LQZ7: Spec Example 7.4. Double Quoted Implicit Keys +M29M: Literal Block Scalar +M5C3: Spec Example 8.21. Block Scalar Nodes +M5DY: Spec Example 2.11. Mapping between Sequences +M9B4: Spec Example 8.7. Literal Scalar +MJS9: Spec Example 6.7. Block Folding +MXS3: Flow Mapping in Block Sequence +MYW6: Block Scalar Strip +MZX3: Non-Specific Tags on Scalars +N782: Fake markers in flow style +NP9H: Spec Example 7.5. Double Quoted Line Breaks +P2AD: Spec Example 8.1. Block Scalar Header +P76L: Spec Example 6.19. Secondary Tag Handle +P94K: Spec Example 6.11. Multi-Line Comments +PBJ2: Spec Example 2.3. Mapping Scalars to Sequences +PRH3: Spec Example 7.9. Single Quoted Lines +Q88A: Spec Example 7.23. Flow Content +Q9WF: Spec Example 6.12. Separation Spaces +QF4Y: Spec Example 7.19. Single Pair Flow Mappings +R4YG: Spec Example 8.2. Block Indentation Indicator +RLU9: Sequence Indent +RR7F: Mixed Block Mapping (implicit to explicit) +RTP8: Spec Example 9.2. Document Markers +RZT7: Spec Example 2.28. Log File +S4T7: Document with footer +S9E8: Spec Example 5.3. Block Structure Indicators +SBG9: Flow Sequence in Flow Mapping +SYW4: Spec Example 2.2. Mapping Scalars to Scalars +TE2A: Spec Example 8.16. Block Mappings +TL85: Spec Example 6.8. Flow Folding +TS54: Folded Block Scalar +U3C3: Spec Example 6.16. “TAG” directive +U9NS: Spec Example 2.8. Play by Play Feed from a Game +UDR7: Spec Example 5.4. Flow Collection Indicators +UGM3: Spec Example 2.27. Invoice +V55R: Aliases in Block Sequence +V9D5: Spec Example 8.19. Compact Block Mappings +X38W: Aliases in Flow Objects +YD5X: Spec Example 2.5. Sequence of Sequences +Z9M4: Spec Example 6.22. Global Tag Prefix +ZF4X: Spec Example 2.6. Mapping of Mappings +ZH7C: Anchors in Mapping diff --git a/tests/run-test-suite/test/libyaml-emitter.skip b/tests/run-test-suite/test/libyaml-emitter.skip deleted file mode 100644 index 5d0ddb8..0000000 --- a/tests/run-test-suite/test/libyaml-emitter.skip +++ /dev/null @@ -1,32 +0,0 @@ -27NA # %YAML 1.2 -2JQS # Null key emission not supported in libyaml -2SXE # Colon in anchor -2XXW # Emits space after colon for null mapping value -35KP # Not adding tags to multiple docs -4ABK # Null key -5TYM # No libyaml-emitter %TAG support yet -5WE3 # Emits space after colon for null mapping value -6BCT # Tab after dash in sequence. XXX? -6CK3 # No libyaml-emitter %TAG support yet -6LVF # Unknown directive -6M2F # Null key -6ZKB # %YAML 1.2 -7W2P # Emits space after colon for null mapping value -8KHE # Emits space after colon for null mapping value -8MK2 # Emits '!<%21> a' for '! a' -C2DT # Emits space after colon for null mapping value -DFF7 # Null key -FH7J # Null key && Emits space after colon for null mapping value -FRK4 # Null key -JTV5 # Emits space after colon for null mapping value -KZN9 # Null key -LE5A # Emits space after colon for null mapping value -M7A3 # No --- after ... -NHX8 # Null key -PW8X # Null key && Emits space after colon for null mapping value -S3PD # Null key -S4JQ # Emits '!<%21> a' for '! a' -UT92 # Emits space after --- for null document -W42U # Emits space after - for null sequence entry -W4TN # Emits space after --- for null document -WZ62 # Null key value diff --git a/tests/run-test-suite/test/libyaml-emitter.t b/tests/run-test-suite/test/libyaml-emitter.t index fb8a634..2b12b3a 100755 --- a/tests/run-test-suite/test/libyaml-emitter.t +++ b/tests/run-test-suite/test/libyaml-emitter.t @@ -5,7 +5,7 @@ set -e if [[ $# -gt 0 ]]; then ids=("$@") else - ids=(`find data | grep '/===$' | cut -d/ -f2 | sort`) + ids=($(cut -d: -f1 < test/libyaml-emitter.list)) fi # Some environments like on OS X, the shell resets the following vars, so we @@ -18,10 +18,6 @@ for id in "${ids[@]}"; do dir="data/$id" label="$id: $(< $dir/===)" [[ -e "$dir/in.yaml" ]] || continue - if grep "$id" test/libyaml-emitter.skip >/dev/null; then - echo "ok $((++count)) # SKIP $label" - continue - fi want="$dir/out.yaml" [[ -e $want ]] || want="$dir/in.yaml" ./src/libyaml-emitter "$dir/test.event" > /tmp/test.out || { diff --git a/tests/run-test-suite/test/libyaml-parser.list b/tests/run-test-suite/test/libyaml-parser.list new file mode 100644 index 0000000..d176537 --- /dev/null +++ b/tests/run-test-suite/test/libyaml-parser.list @@ -0,0 +1,138 @@ +229Q: Spec Example 2.4. Sequence of Mappings +2AUY: Tags in Block Sequence +2XXW: Spec Example 2.25. Unordered Sets +35KP: Tags for Root Objects +3ALJ: Block Sequence in Block Sequence +3GZX: Spec Example 7.1. Alias Nodes +4CQQ: Spec Example 2.18. Multi-line Flow Scalars +4GC6: Spec Example 7.7. Single Quoted Characters +4UYU: Colon in Double Quoted String +4ZYM: Spec Example 6.4. Line Prefixes +54T7: Flow Mapping +565N: Construct Binary +57H4: Spec Example 8.22. Block Collection Nodes +5BVJ: Spec Example 5.7. Block Scalar Indicators +5C5M: Spec Example 7.15. Flow Mappings +5GBF: Spec Example 6.5. Empty Lines +5KJE: Spec Example 7.13. Flow Sequence +5NYZ: Spec Example 6.9. Separated Comment +5TYM: Spec Example 6.21. Local Tag Prefix +5WE3: Spec Example 8.17. Explicit Block Mapping Entries +65WH: Single Entry Block Sequence +6CK3: Spec Example 6.26. Tag Shorthands +6FWR: Block Scalar Keep +6HB6: Spec Example 6.1. Indentation Spaces +6JQW: Spec Example 2.13. In literals, newlines are preserved +6JWB: Tags for Block Objects +6VJK: Spec Example 2.15. Folded newlines are preserved for "more indented" and blank lines +735Y: Spec Example 8.20. Block Node Types +74H7: Tags in Implicit Mapping +77H8: Spec Example 2.23. Various Explicit Tags +7A4E: Spec Example 7.6. Double Quoted Lines +7BUB: Spec Example 2.10. Node for “Sammy Sosa” appears twice in this document +7FWL: Spec Example 6.24. Verbatim Tags +7T8X: Spec Example 8.10. Folded Lines - 8.13. Final Empty Lines +7W2P: Block Mapping with Missing Values +87E4: Spec Example 7.8. Single Quoted Implicit Keys +8G76: Spec Example 6.10. Comment Lines +8KHE: Spec Example 8.17. Explicit Block Mapping Entries +8MK2: Explicit Non-Specific Tag +8QBE: Block Sequence in Block Mapping +8UDB: Spec Example 7.14. Flow Sequence Entries +93JH: Block Mappings in Block Sequence +96L6: Spec Example 2.14. In the folded scalars, newlines become spaces +98YD: Spec Example 5.5. Comment Indicator +9FMG: Multi-level Mapping Indent +9J7A: Simple Mapping Indent +9SHH: Spec Example 5.8. Quoted Scalar Indicators +9U5K: Spec Example 2.12. Compact Nested Mapping +9WXW: Spec Example 6.18. Primary Tag Handle +9YRD: Multiline Scalar at Top Level +A6F9: Spec Example 8.4. Chomping Final Line Break +A984: Multiline Scalar in Mapping +AVM7: Empty Stream +AZ63: Sequence With Same Indentation as Parent Mapping +AZW3: Lookahead test cases +C2DT: Spec Example 7.18. Flow Mapping Adjacent Values +C4HZ: Spec Example 2.24. Global Tags +CC74: Spec Example 6.20. Tag Handles +CT4Q: Spec Example 7.20. Single Pair Explicit Entry +CUP7: Spec Example 5.6. Node Property Indicators +D88J: Flow Sequence in Block Mapping +D9TU: Single Pair Block Mapping +DFF7: Spec Example 7.16. Flow Mapping Entries +DHP8: Flow Sequence +DWX9: Spec Example 8.8. Literal Content +E76Z: Aliases in Implicit Block Mapping +EHF6: Tags for Flow Objects +F2C7: Anchors and Tags +F8F9: Spec Example 8.5. Chomping Trailing Lines +FH7J: Tags on Empty Scalars +FQ7F: Spec Example 2.1. Sequence of Scalars +FUP4: Flow Sequence in Flow Sequence +G4RS: Spec Example 2.17. Quoted Scalars +G992: Spec Example 8.9. Folded Scalar +GH63: Mixed Block Mapping (explicit to implicit) +H2RW: Blank lines +HMK4: Spec Example 2.16. Indentation determines scope +HMQ5: Spec Example 6.23. Node Properties +HS5T: Spec Example 7.12. Plain Lines +J3BT: Spec Example 5.12. Tabs and Spaces +J5UC: Multiple Pair Block Mapping +J7PZ: Spec Example 2.26. Ordered Mappings +J7VC: Empty Lines Between Mapping Elements +J9HZ: Spec Example 2.9. Single Document with Two Comments +JHB9: Spec Example 2.7. Two Documents in a Stream +JQ4R: Spec Example 8.14. Block Sequence +JS2J: Spec Example 6.29. Node Anchors +JTV5: Block Mapping with Multiline Scalars +K4SU: Multiple Entry Block Sequence +K527: Spec Example 6.6. Line Folding +K858: Spec Example 8.6. Empty Scalar Chomping +KMK3: Block Submapping +L94M: Tags in Explicit Mapping +L9U5: Spec Example 7.11. Plain Implicit Keys +LE5A: Spec Example 7.24. Flow Nodes +LP6E: Whitespace After Scalars in Flow +LQZ7: Spec Example 7.4. Double Quoted Implicit Keys +M29M: Literal Block Scalar +M5C3: Spec Example 8.21. Block Scalar Nodes +M5DY: Spec Example 2.11. Mapping between Sequences +M9B4: Spec Example 8.7. Literal Scalar +MJS9: Spec Example 6.7. Block Folding +MXS3: Flow Mapping in Block Sequence +MYW6: Block Scalar Strip +MZX3: Non-Specific Tags on Scalars +NP9H: Spec Example 7.5. Double Quoted Line Breaks +P2AD: Spec Example 8.1. Block Scalar Header +P76L: Spec Example 6.19. Secondary Tag Handle +P94K: Spec Example 6.11. Multi-Line Comments +PBJ2: Spec Example 2.3. Mapping Scalars to Sequences +PRH3: Spec Example 7.9. Single Quoted Lines +PW8X: Anchors on Empty Scalars +Q88A: Spec Example 7.23. Flow Content +Q9WF: Spec Example 6.12. Separation Spaces +QF4Y: Spec Example 7.19. Single Pair Flow Mappings +RLU9: Sequence Indent +RR7F: Mixed Block Mapping (implicit to explicit) +RZT7: Spec Example 2.28. Log File +S4JQ: Spec Example 6.28. Non-Specific Tags +S4T7: Document with footer +S9E8: Spec Example 5.3. Block Structure Indicators +SBG9: Flow Sequence in Flow Mapping +SYW4: Spec Example 2.2. Mapping Scalars to Scalars +TE2A: Spec Example 8.16. Block Mappings +TL85: Spec Example 6.8. Flow Folding +TS54: Folded Block Scalar +U3C3: Spec Example 6.16. “TAG” directive +U9NS: Spec Example 2.8. Play by Play Feed from a Game +UDR7: Spec Example 5.4. Flow Collection Indicators +UGM3: Spec Example 2.27. Invoice +V55R: Aliases in Block Sequence +V9D5: Spec Example 8.19. Compact Block Mappings +W42U: Spec Example 8.15. Block Sequence Entry Types +X38W: Aliases in Flow Objects +YD5X: Spec Example 2.5. Sequence of Sequences +Z9M4: Spec Example 6.22. Global Tag Prefix +ZF4X: Spec Example 2.6. Mapping of Mappings +ZH7C: Anchors in Mapping diff --git a/tests/run-test-suite/test/libyaml-parser.skip b/tests/run-test-suite/test/libyaml-parser.skip deleted file mode 100644 index 999decf..0000000 --- a/tests/run-test-suite/test/libyaml-parser.skip +++ /dev/null @@ -1,22 +0,0 @@ -27NA # %YAML 1.2 -2JQS # Null keys -2SXE # Colon in anchor -4ABK # Null key -6BCT # Test probably bad. tab after dash in sequence -6LVF # Unknown directive -6M2F # Null key -6ZKB # %YAML 1.2 -A2M4 # Tab after dash in sequence. XXX? -BEC7 # %YAML 1.3 -DBG4 # Colon in flow scalar -FRK4 # XXX Why is explicit key in flow? -KZN9 # Null key -M7A3 # No --- after ... -N782 # --- and ... as flow values -NHX8 # Null key -R4YG # Tab char in possible indentation in folded scalar -RTP8 # %YAML 1.2 -S3PD # Null key -UT92 # Multiline plain key in flow does not work -W4TN # %YAML 1.2 -WZ62 # Tagged empty values in flow mapping do not work diff --git a/tests/run-test-suite/test/libyaml-parser.t b/tests/run-test-suite/test/libyaml-parser.t index c891df9..1c3d0c4 100755 --- a/tests/run-test-suite/test/libyaml-parser.t +++ b/tests/run-test-suite/test/libyaml-parser.t @@ -5,7 +5,7 @@ set -e if [[ $# -gt 0 ]]; then ids=("$@") else - ids=(`find data | grep '/===$' | cut -d/ -f2 | sort`) + ids=($(cut -d: -f1 < test/libyaml-parser.list)) fi count=0 @@ -13,10 +13,6 @@ for id in "${ids[@]}"; do dir="data/$id" label="$id: $(< $dir/===)" [[ -e "$dir/in.yaml" ]] || continue - if grep "$id" test/libyaml-parser.skip >/dev/null; then - echo "ok $((++count)) # SKIP $label" - continue - fi ./src/libyaml-parser "$dir/in.yaml" > /tmp/test.out || { ( cat "$dir/in.yaml"