Commit Graph

225 Commits

Author SHA1 Message Date
KtorZ 01c392836e
Fix CI script + add script interactions. 2023-02-15 09:42:46 +01:00
KtorZ e1c0c3986d
Remove unused imports in 054. 2023-02-15 09:42:45 +01:00
Kasey White e15e725bfe add one more test 2023-02-15 02:20:05 -05:00
Kasey White 32b0200966 fixes: tuple clauses, zero args funcs, list clause named pattern
List Clauses patterns handle var cases

Fixed Tuple Clauses issue with last clause not being a tuple

Redid how zero arg functions and dependencies are handled. Tough one lol
2023-02-15 02:20:05 -05:00
KtorZ 23bf101e08 Add new acceptance test scenario: 058
Doesn't like var patterns in list pattern-matching

  ```
  Error:
    × Main thread panicked.
    ├─▶ at crates/aiken-lang/src/uplc.rs:770:29
    ╰─▶ internal error: entered unreachable code
  ```
2023-02-15 02:20:05 -05:00
KtorZ d9cfad8f68 Add new acceptance test scenario: 061
```
  Error:
    × Main thread panicked.
    ├─▶ at crates/uplc/src/optimize.rs:16:68
    ╰─▶ called `Result::unwrap()` on an `Err` value: FreeUnique(Name { text: "tests_tx_1", unique:
        Unique(14) })
  ```
2023-02-15 02:20:05 -05:00
KtorZ 6132c092e3 Add new acceptance test scenario: 059
```
  Error:
    × Main thread panicked.
    ├─▶ at crates/aiken-lang/src/uplc.rs:1451:52
    ╰─▶ called `Option::unwrap()` on a `None` value
  ```

  See also: #310
2023-02-15 02:20:05 -05:00
KtorZ a3078adce8
Add succinct README to explain what's going on. 2023-02-14 16:25:48 +01:00
KtorZ 685473ead6
Rename data -> ctx 2023-02-14 16:11:00 +01:00
KtorZ 5369872a3d
Add new script_context acceptance scenario for withdrawals. 2023-02-14 16:11:00 +01:00
KtorZ 251aa756d9
Make basic script a template, and add more assertions. 2023-02-14 11:37:10 +01:00
KtorZ 545323128c
Write basic e2e validator with evaluation. 2023-02-14 10:39:31 +01:00
KtorZ 4ef1ba69de
Use blueprint in hello-world example. 2023-02-14 09:16:30 +01:00
Kasey White 765ceefd38 feat: add ability to downcast void to data 2023-02-12 18:56:38 -05:00
Kasey White e9883adf12 fix: scope issue when using when with a function call subject 2023-02-12 18:43:11 -05:00
KtorZ 2bda581fbd Add new acceptance test scenario: 057
```
  Error:
    × Main thread panicked.
    ├─▶ at crates/aiken-lang/src/uplc.rs:4286:48
    ╰─▶ called `Option::unwrap()` on a `None` value
  ```
2023-02-12 18:43:11 -05:00
Kasey White 1c9540ec87 one more test case to add 2023-02-11 22:26:34 -05:00
Kasey White 4b1015e0d4 change how expect works on lists and constructors
Add more coverage to acceptance test 40 on expect
2023-02-11 22:26:34 -05:00
Kasey White e92d9af3c2 fix: changed how list_access_to_uplc handles discards fixing unit test 55
Also fix incorrect error message in runtime in machine
2023-02-11 04:30:18 -05:00
rvcas 9b0fc0b395
chore: fix some weirdness after rebasing with main 2023-02-10 10:09:00 +01:00
Matthias Benkort efbc3abb95
Delete tests.ak 2023-02-09 09:23:46 +01:00
rvcas 9348caab2f
feat(expect): update formatter
* Token::Expect should format to expect
* since we still capture assert this means
  we can help users update to the new syntax
2023-02-09 00:57:38 -05:00
rvcas 6f591c633d
chore: fmt most of the acceptance tests 2023-02-09 00:57:14 -05:00
Kasey White 7b29a75cc0 test name number fix 2023-02-09 00:09:23 -05:00
Kasey White 076871492b fix: unwrap used in a reachable place. Replaced with alternative option 2023-02-09 00:09:23 -05:00
Kasey White 986a6009f7 fix: Various fixes for FieldsExpose, ListAccessor, TupleAccessor 2023-02-09 00:09:23 -05:00
KtorZ cf7a20b986 Add new acceptance test scenario: 052
Pattern-match on unary constructors.
2023-02-09 00:09:23 -05:00
KtorZ c50bf94020 Add new acceptance test scenario: 053
```
  × foo failed
  help: ┍━ left ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┑
        │ Failed to deserialise PlutusData using UnConstrData: │
        │                                                      │
        │ Con(                                                 │
        │     Data(                                            │
        │         BigInt(                                      │
        │             Int(                                     │
        │                 Int(                                 │
        │                     Int {                            │
        │                         neg: false,                  │
        │                         val: 0,                      │
        │                     },                               │
        │                 ),                                   │
        │             ),                                       │
        │         ),                                           │
        │     ),                                               │
        │ )                                                    │
        ┕━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┙

        should be equal to

        ┍━ right ━━━━━━━━━┑
        │ (con integer 3) │
        ┕━━━━━━━━━━━━━━━━━┙
  ```
2023-02-09 00:09:23 -05:00
Kasey White f1b24a5f6d fix: the following issues
fix conversion from inner opaque type for when and assignment
This fixes Clause being used in cases where ListClause or TupleClause should be used
Reset defined and zero arg functions between each code gen
Fixes for optimizations when encountering shadowed variables
2023-02-05 20:35:39 -05:00
rvcas 025bf73254 test: verify schnorr and ecdsa 2023-02-04 22:07:56 -05:00
Kasey White 6053e76f6f chore: more acceptance tests
Co-authored-by: rvcas <x@rvcas.dev>
2023-02-04 02:33:10 -05:00
rvcas a9ed04ef22 feat: newer rules around casting Data
* you cannot cast FROM Data with a `let`
* you cannot cast FROM Data by passing
  Data to none Data when calling a function
* you MUST use `assert` to cast from data
* you can cast INTO Data with a `let`
* you can cast INTO Data by passing none Data
  to Data when calling a function
* You cannot assert cast Data without an
  annotation
2023-02-04 02:33:10 -05:00
rvcas 0f6d2487ec
fix: acceptance test 040 after new casting rules 2023-02-02 01:17:58 -05:00
rvcas 79b0af15da
chore: commit acceptance test plutus files 2023-02-02 00:49:47 -05:00
rvcas 0ee083cc9a
chore(examples): commit updated plutus.json 2023-02-01 23:54:35 -05:00
KtorZ 79b8786cee
Replace 'assets' with generated blueprints. 2023-01-31 15:39:41 +01:00
rvcas d4a73f1235
chore: commit assets 2023-01-30 12:01:56 -05:00
rvcas aec79936e2
chore: move a test case to 049 2023-01-30 11:49:18 -05:00
Lucas b653714c0c
Merge branch 'main' into when-clause-guards 2023-01-30 11:40:29 -05:00
Kasey White a638388747 Add more complex test 40.
Add assert for when constr index is given
2023-01-30 04:17:03 -05:00
Kasey White 8c04ab093a update test 40 2023-01-30 03:24:52 -05:00
Micah Kendall d608c50130 Added 048 acceptance test 2023-01-23 01:12:29 +11:00
Kasey White e36f91c39c fix: multiple list cases of the same length weren't being handled 2023-01-21 19:42:17 -05:00
KtorZ a178cee7bf Add new acceptance test scenario: 046 2023-01-21 19:42:17 -05:00
Kasey White e8fb386bdc chore: Switch from hashmap and hashset to indexmap and indexset 2023-01-21 18:10:15 -05:00
KtorZ a926a1a2d4
Add new acceptance test scenario 048 2023-01-21 17:49:44 +01:00
KtorZ 83fd910604
Update artifacts from acceptance tests 036 2023-01-21 12:46:22 +01:00
KtorZ ce65236514
Parse tests as private functions.
They actually are private; we can't export / import tests. Fixes #284.
2023-01-20 12:50:07 +01:00
rvcas 2f6c794cdf fix: ci... :facepalm 2023-01-18 15:29:51 -05:00
rvcas 479d49bdfc fix: ci... again 2023-01-18 15:29:51 -05:00