Add PlutusV3 conformance tests and also control budgets
There were some odd discrepancy for `integerToByteString` on the mem side. Either 1 or about 1000 mem units off; which I couldn't quite figure out. Yet, it proves useful to validate builtin at large and ensure we have a valid cost model for v3.
This commit is contained in:
@@ -0,0 +1,4 @@
|
||||
-- select first branch
|
||||
(program 1.1.0
|
||||
(case (constr 0 (con integer 0)) (lam x (con integer 1)) (lam x (con integer 2)))
|
||||
)
|
||||
@@ -0,0 +1,2 @@
|
||||
({cpu: 80100
|
||||
| mem: 600})
|
||||
@@ -0,0 +1 @@
|
||||
(program 1.1.0 (con integer 1))
|
||||
@@ -0,0 +1,4 @@
|
||||
-- select second branch
|
||||
(program 1.1.0
|
||||
(case (constr 1 (con integer 0)) (lam x (con integer 1)) (lam x (con integer 2)))
|
||||
)
|
||||
@@ -0,0 +1,2 @@
|
||||
({cpu: 80100
|
||||
| mem: 600})
|
||||
@@ -0,0 +1 @@
|
||||
(program 1.1.0 (con integer 2))
|
||||
@@ -0,0 +1,4 @@
|
||||
-- select first branch and do computation with the args
|
||||
(program 1.1.0
|
||||
(case (constr 0 (con integer 3) (con integer 2)) (lam x (lam y [(builtin addInteger) x y])) (lam x (lam y [(builtin subtractInteger) x y])))
|
||||
)
|
||||
@@ -0,0 +1,2 @@
|
||||
({cpu: 277308
|
||||
| mem: 1202})
|
||||
@@ -0,0 +1 @@
|
||||
(program 1.1.0 (con integer 5))
|
||||
@@ -0,0 +1,4 @@
|
||||
-- select second branch and do computation with the args
|
||||
(program 1.1.0
|
||||
(case (constr 1 (con integer 3) (con integer 2)) (lam x (lam y [(builtin addInteger) x y])) (lam x (lam y [(builtin subtractInteger) x y])))
|
||||
)
|
||||
@@ -0,0 +1,2 @@
|
||||
({cpu: 277308
|
||||
| mem: 1202})
|
||||
@@ -0,0 +1 @@
|
||||
(program 1.1.0 (con integer 1))
|
||||
@@ -0,0 +1,4 @@
|
||||
-- case of non-constr
|
||||
(program 1.1.0
|
||||
(case (con integer 1) (lam x x) (lam x x))
|
||||
)
|
||||
@@ -0,0 +1 @@
|
||||
evaluation failure
|
||||
@@ -0,0 +1 @@
|
||||
evaluation failure
|
||||
@@ -0,0 +1,4 @@
|
||||
-- branch with wrong arguments
|
||||
(program 1.1.0
|
||||
(case (constr 0 (con integer 0)) (con integer 1) (lam x (con integer 2)))
|
||||
)
|
||||
@@ -0,0 +1 @@
|
||||
evaluation failure
|
||||
@@ -0,0 +1 @@
|
||||
evaluation failure
|
||||
@@ -0,0 +1,4 @@
|
||||
-- nullary case
|
||||
(program 1.1.0
|
||||
(case (constr 0) (con integer 1) (con integer 2))
|
||||
)
|
||||
@@ -0,0 +1,2 @@
|
||||
({cpu: 48100
|
||||
| mem: 400})
|
||||
@@ -0,0 +1 @@
|
||||
(program 1.1.0 (con integer 1))
|
||||
@@ -0,0 +1,4 @@
|
||||
-- empty case, aka -XEmptyCase
|
||||
(program 1.1.0
|
||||
(case (constr 0))
|
||||
)
|
||||
@@ -0,0 +1 @@
|
||||
evaluation failure
|
||||
@@ -0,0 +1 @@
|
||||
evaluation failure
|
||||
Reference in New Issue
Block a user