Skip to content

Commit 409e795

Browse files
authored
Additional conformance tests for insertCoin and valueContains (#7409)
* Add insertCoin conformance test where key size > 32 bytes is allowed * Add conformance test for valueContains, rename empty -> pos-empty * Exclude new conformance tests from agda conformance * Rename long-key-zero -> long-key-zero-1 * Add another conformance test inserting zero quantity with key that is too long * Exclude long key tests from agda conformance tests * Add conformance tests for insertCoin where key length is too long
1 parent 430a5e4 commit 409e795

19 files changed

+66
-2
lines changed

plutus-conformance/agda/Spec.hs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,10 @@ failingEvaluationTests =
180180
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/no-overflow"
181181
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/underflow"
182182
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/no-underflow"
183+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/long-key-zero-1"
184+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/long-key-zero-2"
185+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/key-too-long-1"
186+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/key-too-long-2"
183187
, "test-cases/uplc/evaluation/builtin/semantics/lookupCoin/absent"
184188
, "test-cases/uplc/evaluation/builtin/semantics/lookupCoin/present"
185189
, "test-cases/uplc/evaluation/builtin/semantics/unionValue/cancel-01"
@@ -192,7 +196,8 @@ failingEvaluationTests =
192196
, "test-cases/uplc/evaluation/builtin/semantics/unionValue/underflow"
193197
, "test-cases/uplc/evaluation/builtin/semantics/unionValue/no-underflow"
194198
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/ccy-missing"
195-
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/empty"
199+
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/pos-empty"
200+
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/neg-empty"
196201
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/multi-insufficient"
197202
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/multi-sufficient"
198203
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/neg-neg-eq"
@@ -294,6 +299,10 @@ failingBudgetTests =
294299
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/no-overflow"
295300
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/underflow"
296301
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/no-underflow"
302+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/long-key-zero-1"
303+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/long-key-zero-2"
304+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/key-too-long-1"
305+
, "test-cases/uplc/evaluation/builtin/semantics/insertCoin/key-too-long-2"
297306
, "test-cases/uplc/evaluation/builtin/semantics/lookupCoin/absent"
298307
, "test-cases/uplc/evaluation/builtin/semantics/lookupCoin/present"
299308
, "test-cases/uplc/evaluation/builtin/semantics/unionValue/cancel-01"
@@ -306,7 +315,8 @@ failingBudgetTests =
306315
, "test-cases/uplc/evaluation/builtin/semantics/unionValue/underflow"
307316
, "test-cases/uplc/evaluation/builtin/semantics/unionValue/no-underflow"
308317
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/ccy-missing"
309-
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/empty"
318+
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/pos-empty"
319+
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/neg-empty"
310320
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/multi-insufficient"
311321
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/multi-sufficient"
312322
, "test-cases/uplc/evaluation/builtin/semantics/valueContains/neg-neg-eq"
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
-- A key larger than 32-bit, which is not allowed
2+
(program 1.0.0
3+
[ (builtin insertCoin)
4+
(con bytestring #aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
5+
(con bytestring #)
6+
(con integer 1)
7+
(con value [])
8+
]
9+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
evaluation failure
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
evaluation failure
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
-- A key larger than 32-bit, which is not allowed
2+
(program 1.0.0
3+
[ (builtin insertCoin)
4+
(con bytestring #)
5+
(con bytestring #aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
6+
(con integer 1)
7+
(con value [])
8+
]
9+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
evaluation failure
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
evaluation failure
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
-- A key larger than 32-bit, which is only allowed when inserting 0 value
2+
(program 1.0.0
3+
[ (builtin insertCoin)
4+
(con bytestring #aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa)
5+
(con bytestring #)
6+
(con integer 0)
7+
(con value [(#, [(#, 1)])])
8+
]
9+
)
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
({cpu: 100000144100
2+
| mem: 100000001000})
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
(program 1.0.0 (con value [(#, [(#, 1)])]))

0 commit comments

Comments
 (0)