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) })
  ```
This commit is contained in:
KtorZ 2023-02-13 11:09:07 +01:00 committed by Kasey
parent 6132c092e3
commit d9cfad8f68
3 changed files with 106 additions and 0 deletions

View File

@ -0,0 +1,13 @@
# This file was generated by Aiken
# You typically do not need to edit this file
[[requirements]]
name = "aiken-lang/stdlib"
version = "main"
source = "github"
[[packages]]
name = "aiken-lang/stdlib"
version = "main"
requirements = []
source = "github"

View File

@ -0,0 +1,8 @@
name = 'aiken-lang/acceptance_test_061'
version = '0.0.0'
description = ''
[[dependencies]]
name = 'aiken-lang/stdlib'
version = 'main'
source = 'github'

View File

@ -0,0 +1,85 @@
use aiken/dict
use aiken/interval.{Interval, IntervalBound, PositiveInfinity}
use aiken/transaction.{
InlineDatum, Input, Output, OutputReference, Transaction, TransactionId,
}
use aiken/transaction/credential.{
Address, ScriptCredential, StakeCredential, VerificationKeyCredential,
}
use aiken/transaction/value
const keyhash = #"010203040506"
const scripthash = #"060504030201"
pub fn keyhash_address(with_stake_credential: Option<StakeCredential>) {
Address {
payment_credential: VerificationKeyCredential(keyhash),
stake_credential: with_stake_credential,
}
}
pub fn scripthash_address(with_stake_credential: Option<StakeCredential>) {
Address {
payment_credential: ScriptCredential(scripthash),
stake_credential: with_stake_credential,
}
}
type SampleData {
a: Int,
b: ByteArray,
}
pub fn tx_1() -> Transaction {
let sample_datum = SampleData { a: 1, b: #"01" }
let tx =
Transaction {
inputs: [
Input {
output_reference: OutputReference {
transaction_id: TransactionId { hash: #"" },
output_index: 0,
},
output: Output {
address: scripthash_address(None),
value: value.zero(),
datum: InlineDatum(sample_datum),
reference_script: None,
},
},
],
reference_inputs: [],
outputs: [
Output {
address: keyhash_address(None),
value: value.from_lovelace(10000),
datum: InlineDatum(sample_datum),
reference_script: None,
},
],
fee: value.zero(),
mint: value.from_asset(#"000000", #"00", -1),
certificates: [],
withdrawals: dict.new(),
validity_range: Interval {
lower_bound: IntervalBound {
bound_type: PositiveInfinity,
is_inclusive: True,
},
upper_bound: IntervalBound {
bound_type: PositiveInfinity,
is_inclusive: True,
},
},
extra_signatories: [keyhash],
redeemers: dict.new(),
datums: dict.new(),
id: TransactionId { hash: #"" },
}
tx
}
test some_test() {
tx_1() == tx_1()
}