Skip to content

Commit 102614a

Browse files
Pull order examples into examples folder
1 parent 8c9b264 commit 102614a

File tree

4 files changed

+147
-119
lines changed

4 files changed

+147
-119
lines changed

lib/tests/examples/ex_order.ak

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
use aiken/cbor
2+
use types/order.{Destination, OrderDatum, Swap, Deposit, Withdrawal, Scoop, Cancel}
3+
use aiken/transaction.{NoDatum}
4+
use sundae/multisig
5+
use tests/examples/ex_shared.{print_example, wallet_address}
6+
7+
fn mk_swap() -> OrderDatum {
8+
let addr = wallet_address(#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513")
9+
let dest = Destination { address: addr, datum: NoDatum }
10+
let swap =
11+
Swap(
12+
(#"", #"", 10000000),
13+
(
14+
#"d441227553a0f1a965fee7d60a0f724b368dd1bddbc208730fccebcf",
15+
#"44554d4d59",
16+
0,
17+
),
18+
)
19+
OrderDatum {
20+
pool_ident: None,
21+
owner: multisig.Signature(
22+
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
23+
),
24+
max_protocol_fee: 2500000,
25+
destination: dest,
26+
details: swap,
27+
extension: Void,
28+
}
29+
}
30+
31+
test example_swap() {
32+
print_example(mk_swap())
33+
}
34+
35+
fn mk_deposit() -> OrderDatum {
36+
let addr = wallet_address(#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513")
37+
let dest = Destination { address: addr, datum: NoDatum }
38+
let deposit =
39+
Deposit((
40+
(#"", #"", 10000000),
41+
(
42+
#"d441227553a0f1a965fee7d60a0f724b368dd1bddbc208730fccebcf",
43+
#"44554d4d59",
44+
10000000,
45+
),
46+
))
47+
OrderDatum {
48+
pool_ident: None,
49+
owner: multisig.Signature(
50+
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
51+
),
52+
max_protocol_fee: 2500000,
53+
destination: dest,
54+
details: deposit,
55+
extension: Void,
56+
}
57+
}
58+
59+
test example_deposit() {
60+
print_example(mk_deposit())
61+
}
62+
63+
fn mk_withdrawal() {
64+
let addr = wallet_address(#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513")
65+
let dest = Destination { address: addr, datum: NoDatum }
66+
let withdrawal =
67+
Withdrawal(
68+
(
69+
#"d441227553a0f1a965fee7d60a0f724b368dd1bddbc208730fccebcf",
70+
#"6c",
71+
10000000
72+
),
73+
)
74+
OrderDatum {
75+
pool_ident: None,
76+
owner: multisig.Signature(
77+
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
78+
),
79+
max_protocol_fee: 2500000,
80+
destination: dest,
81+
details: withdrawal,
82+
extension: Void,
83+
}
84+
}
85+
86+
test example_withdrawal() {
87+
print_example(mk_withdrawal())
88+
}
89+
90+
test example_cancel_redeemer() {
91+
print_example(cbor.serialise(Cancel))
92+
}
93+
test example_scoop_redeemer() {
94+
print_example(cbor.serialise(Scoop))
95+
}

lib/tests/examples/ex_settings.ak

Lines changed: 38 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
1-
use aiken/bytearray
21
use aiken/transaction/credential.{Address, VerificationKeyCredential}
32
use aiken/cbor
43
use sundae/multisig
54
use aiken/transaction/value
65
use types/settings.{SettingsDatum}
76
use aiken/transaction.{Input, Output, InlineDatum}
8-
use tests/examples/ex_shared.{script_address, mk_output_reference}
7+
use tests/examples/ex_shared.{print_example, script_address, mk_output_reference}
98

109
pub fn mk_valid_settings_datum(
1110
scoopers: List<ByteArray>,
@@ -66,10 +65,45 @@ pub fn mk_valid_settings_input(
6665
}
6766

6867
test example_settings_datum() {
69-
trace bytearray.to_hex(
68+
print_example(
7069
cbor.serialise(mk_valid_settings_datum([
7170
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa024ad",
7271
])),
7372
)
74-
True
73+
}
74+
75+
test example_big_settings_datum() {
76+
// 30 scoopers at least
77+
print_example(mk_valid_settings_datum([
78+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02400",
79+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02401",
80+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02402",
81+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02403",
82+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02404",
83+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02405",
84+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02406",
85+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02407",
86+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02408",
87+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02409",
88+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02410",
89+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02411",
90+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02412",
91+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02413",
92+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02414",
93+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02415",
94+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02416",
95+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02417",
96+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02418",
97+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02419",
98+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02421",
99+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02422",
100+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02423",
101+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02424",
102+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02425",
103+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02426",
104+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02427",
105+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02428",
106+
#"725011d2c296eb3341e159b6c5c6991de11e81062b95108c9aa02429",
107+
])
108+
)
75109
}

lib/tests/examples/ex_shared.ak

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,18 @@
11
use aiken/bytearray
2+
use aiken/cbor
23
use aiken/transaction.{OutputReference, TransactionId}
34
use aiken/transaction/credential.{Address, ScriptCredential, VerificationKeyCredential}
45

6+
pub const examples_enabled: Int = 0
7+
pub fn print_example(d: Data) -> Bool {
8+
if examples_enabled == 1 {
9+
trace bytearray.to_hex(cbor.serialise(d))
10+
True
11+
} else {
12+
True
13+
}
14+
}
15+
516
pub fn mk_tx_hash(n: Int) -> TransactionId {
617
expect n < 256
718
let h =

lib/types/order.ak

Lines changed: 3 additions & 115 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
use aiken/bytearray
2-
use aiken/cbor
3-
use aiken/transaction.{Datum, NoDatum, OutputReference, ValidityRange}
4-
use aiken/transaction/credential.{Address, VerificationKey, VerificationKeyCredential, Signature}
1+
use aiken/transaction.{Datum, OutputReference, ValidityRange}
2+
use aiken/transaction/credential.{Address, VerificationKey, Signature}
53
use shared.{Ident, SingletonValue}
64
use sundae/multisig.{MultisigScript}
75

@@ -21,111 +19,6 @@ pub type OrderDatum {
2119
extension: Data,
2220
}
2321

24-
test example_swap() {
25-
let addr =
26-
Address(
27-
VerificationKeyCredential(
28-
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
29-
),
30-
None,
31-
)
32-
let dest = Destination { address: addr, datum: NoDatum }
33-
let swap =
34-
Swap(
35-
(#"", #"", 10000000),
36-
(
37-
#"d441227553a0f1a965fee7d60a0f724b368dd1bddbc208730fccebcf",
38-
#"44554d4d59",
39-
0,
40-
),
41-
)
42-
trace bytearray.to_hex(
43-
cbor.serialise(
44-
OrderDatum {
45-
pool_ident: None,
46-
owner: multisig.Signature(
47-
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
48-
),
49-
max_protocol_fee: 2500000,
50-
destination: dest,
51-
details: swap,
52-
extension: Void,
53-
},
54-
),
55-
)
56-
True
57-
}
58-
59-
test example_deposit() {
60-
let addr =
61-
Address(
62-
VerificationKeyCredential(
63-
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
64-
),
65-
None,
66-
)
67-
let dest = Destination { address: addr, datum: NoDatum }
68-
let deposit =
69-
Deposit((
70-
(#"", #"", 10000000),
71-
(
72-
#"d441227553a0f1a965fee7d60a0f724b368dd1bddbc208730fccebcf",
73-
#"44554d4d59",
74-
10000000,
75-
),
76-
))
77-
trace bytearray.to_hex(
78-
cbor.serialise(
79-
OrderDatum {
80-
pool_ident: None,
81-
owner: multisig.Signature(
82-
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
83-
),
84-
max_protocol_fee: 2500000,
85-
destination: dest,
86-
details: deposit,
87-
extension: Void,
88-
},
89-
),
90-
)
91-
True
92-
}
93-
94-
test example_withdrawal() {
95-
let addr =
96-
Address(
97-
VerificationKeyCredential(
98-
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
99-
),
100-
None,
101-
)
102-
let dest = Destination { address: addr, datum: NoDatum }
103-
let withdrawal =
104-
Withdrawal(
105-
(
106-
#"d441227553a0f1a965fee7d60a0f724b368dd1bddbc208730fccebcf",
107-
#"6c",
108-
10000000
109-
),
110-
)
111-
trace bytearray.to_hex(
112-
cbor.serialise(
113-
OrderDatum {
114-
pool_ident: None,
115-
owner: multisig.Signature(
116-
#"6af53ff4f054348ad825c692dd9db8f1760a8e0eacf9af9f99306513",
117-
),
118-
max_protocol_fee: 2500000,
119-
destination: dest,
120-
details: withdrawal,
121-
extension: Void,
122-
},
123-
),
124-
)
125-
True
126-
}
127-
128-
12922
// A destination consists of
13023
pub type Destination {
13124
// An address
@@ -175,9 +68,4 @@ pub type SignedStrategyExecution {
17568
strategy: StrategyExecution,
17669
// The signature of the bytes of Strategy
17770
signature: Signature,
178-
}
179-
180-
test example_swap_redeemer() {
181-
trace bytearray.to_hex(cbor.serialise(Scoop))
182-
True
183-
}
71+
}

0 commit comments

Comments
 (0)