Tag every corpus row with :portability (:common vs :jvm)
Dialects without JVM interop can now filter the conformance corpus: :jvm marks rows exercising host interop (java.*/clojure.lang.* class references, dot forms, ctors, statics, arrays, proxy/bean), :common is portable Clojure any dialect must satisfy. 3565 rows tagged (3175 common / 390 jvm), the key documented in the row schema, and regen-corpus preserves it on rewrite. Closes #289.
This commit is contained in:
parent
ce8e89ca86
commit
d6d11d5748
3 changed files with 3578 additions and 3571 deletions
|
|
@ -24,11 +24,17 @@ the canonical, frozen contract**: it is what every runtime consumes, what
|
|||
## Row schema
|
||||
|
||||
```edn
|
||||
{:suite "numbers / arithmetic" ; grouping; "<suite> :: <label>" is the case id
|
||||
:label "integer add" ; unique within a suite
|
||||
:actual "(+ 1 2)" ; Clojure source to evaluate
|
||||
:expected "3"} ; Clojure source whose value it must equal,
|
||||
{:suite "numbers / arithmetic" ; grouping; "<suite> :: <label>" is the case id
|
||||
:label "integer add" ; unique within a suite
|
||||
:actual "(+ 1 2)" ; Clojure source to evaluate
|
||||
:expected "3" ; Clojure source whose value it must equal,
|
||||
; or the keyword :throws
|
||||
:portability :common} ; :common = portable Clojure any dialect
|
||||
; must satisfy; :jvm = exercises host
|
||||
; interop (java.*/clojure.lang.* classes,
|
||||
; dot forms, ctors, statics, arrays,
|
||||
; proxy/bean) — skip on a non-JVM-shaped
|
||||
; dialect
|
||||
```
|
||||
|
||||
- `[:suite :label]` is the **canonical, unique case id** (the generator
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue