Commit Graph

260 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
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
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
rvcas
f975c345c9 fix: ci 2023-01-18 15:29:51 -05:00
KtorZ
75808cc046 Add new acceptance scenario: 044
 044
  Error:
    × Main thread panicked.
    ├─▶ at crates/aiken-lang/src/uplc.rs:846:89
    ╰─▶ called `Option::unwrap()` on a `None` value
2023-01-18 15:29:51 -05:00