Skip to content

Commit 686ad6d

Browse files
authored
Merge pull request #218 from casper-ecosystem/aligning_with_casper_types
Aligning client code with recent node changes
2 parents 80bbe5e + 9e6f79c commit 686ad6d

File tree

5 files changed

+75
-145
lines changed

5 files changed

+75
-145
lines changed

lib/cli/tests.rs

Lines changed: 22 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -448,8 +448,8 @@ mod transaction {
448448
use crate::{cli::TransactionV1BuilderError, Error::TransactionBuild};
449449
use casper_types::{
450450
bytesrepr::Bytes, system::auction::Reservation, PackageAddr, TransactionArgs,
451-
TransactionEntryPoint, TransactionInvocationTarget, TransactionRuntime, TransactionTarget,
452-
TransferTarget,
451+
TransactionEntryPoint, TransactionInvocationTarget, TransactionRuntimeParams,
452+
TransactionTarget, TransferTarget,
453453
};
454454
use once_cell::sync::Lazy;
455455
use rand::{thread_rng, Rng};
@@ -1156,10 +1156,10 @@ mod transaction {
11561156
let entity_addr: EntityAddr = EntityAddr::new_account([0u8; 32]);
11571157
let entity_hash = entity_addr.value();
11581158
let entry_point = String::from("test-entry-point");
1159+
let params = TransactionRuntimeParams::VmCasperV1;
11591160
let target = &TransactionTarget::Stored {
11601161
id: TransactionInvocationTarget::ByHash(entity_hash),
1161-
runtime: TransactionRuntime::VmCasperV1,
1162-
transferred_value: 0,
1162+
runtime: params,
11631163
};
11641164

11651165
let entry_point_ref = &TransactionEntryPoint::Custom(entry_point);
@@ -1184,11 +1184,11 @@ mod transaction {
11841184
chunked_args: None,
11851185
};
11861186

1187+
let params = TransactionRuntimeParams::VmCasperV1;
11871188
let transaction_builder_params = TransactionBuilderParams::InvocableEntity {
11881189
entity_hash: entity_hash.into(),
11891190
entry_point: "test-entry-point",
1190-
runtime: TransactionRuntime::VmCasperV1,
1191-
transferred_value: 0,
1191+
runtime: params,
11921192
};
11931193
let transaction =
11941194
create_transaction(transaction_builder_params, transaction_string_params, true);
@@ -1212,10 +1212,10 @@ mod transaction {
12121212
#[test]
12131213
fn should_create_invocable_entity_alias_transaction() {
12141214
let alias = String::from("alias");
1215+
let params = TransactionRuntimeParams::VmCasperV1;
12151216
let target = &TransactionTarget::Stored {
12161217
id: TransactionInvocationTarget::ByName(alias),
1217-
runtime: TransactionRuntime::VmCasperV1,
1218-
transferred_value: 0,
1218+
runtime: params,
12191219
};
12201220
let transaction_string_params = TransactionStrParams {
12211221
secret_key: "",
@@ -1237,11 +1237,11 @@ mod transaction {
12371237
chunked_args: None,
12381238
};
12391239

1240+
let params = TransactionRuntimeParams::VmCasperV1;
12401241
let transaction_builder_params = TransactionBuilderParams::InvocableEntityAlias {
12411242
entity_alias: "alias",
12421243
entry_point: "entry-point-alias",
1243-
runtime: TransactionRuntime::VmCasperV1,
1244-
transferred_value: 0,
1244+
runtime: params,
12451245
};
12461246
let transaction =
12471247
create_transaction(transaction_builder_params, transaction_string_params, true);
@@ -1267,13 +1267,13 @@ mod transaction {
12671267
let package_addr: PackageAddr = vec![0u8; 32].as_slice().try_into().unwrap();
12681268
let entry_point = "test-entry-point-package";
12691269
let maybe_entity_version = Some(23);
1270+
let params = TransactionRuntimeParams::VmCasperV1;
12701271
let target = &TransactionTarget::Stored {
12711272
id: TransactionInvocationTarget::ByPackageHash {
12721273
addr: package_addr,
12731274
version: maybe_entity_version,
12741275
},
1275-
runtime: TransactionRuntime::VmCasperV1,
1276-
transferred_value: 0,
1276+
runtime: params,
12771277
};
12781278
let transaction_string_params = TransactionStrParams {
12791279
secret_key: "",
@@ -1294,13 +1294,12 @@ mod transaction {
12941294
session_entry_point: None,
12951295
chunked_args: None,
12961296
};
1297-
1297+
let params = TransactionRuntimeParams::VmCasperV1;
12981298
let transaction_builder_params = TransactionBuilderParams::Package {
12991299
package_hash: package_addr.into(),
13001300
entry_point,
13011301
maybe_entity_version,
1302-
runtime: TransactionRuntime::VmCasperV1,
1303-
transferred_value: 0,
1302+
runtime: params,
13041303
};
13051304
let transaction =
13061305
create_transaction(transaction_builder_params, transaction_string_params, true);
@@ -1326,13 +1325,13 @@ mod transaction {
13261325
let package_name = String::from("package-name");
13271326
let entry_point = "test-entry-point-package";
13281327
let maybe_entity_version = Some(23);
1328+
let params = TransactionRuntimeParams::VmCasperV1;
13291329
let target = &TransactionTarget::Stored {
13301330
id: TransactionInvocationTarget::ByPackageName {
13311331
name: package_name.clone(),
13321332
version: maybe_entity_version,
13331333
},
1334-
runtime: TransactionRuntime::VmCasperV1,
1335-
transferred_value: 0,
1334+
runtime: params,
13361335
};
13371336
let transaction_string_params = TransactionStrParams {
13381337
secret_key: "",
@@ -1354,12 +1353,12 @@ mod transaction {
13541353
chunked_args: None,
13551354
};
13561355

1356+
let params = TransactionRuntimeParams::VmCasperV1;
13571357
let transaction_builder_params = TransactionBuilderParams::PackageAlias {
13581358
package_alias: &package_name,
13591359
entry_point,
13601360
maybe_entity_version,
1361-
runtime: TransactionRuntime::VmCasperV1,
1362-
transferred_value: 0,
1361+
runtime: params,
13631362
};
13641363
let transaction =
13651364
create_transaction(transaction_builder_params, transaction_string_params, true);
@@ -1383,12 +1382,11 @@ mod transaction {
13831382
fn should_create_session_transaction() {
13841383
let transaction_bytes = Bytes::from(vec![1u8; 32]);
13851384
let is_install_upgrade = true;
1385+
let params = TransactionRuntimeParams::VmCasperV1;
13861386
let target = &TransactionTarget::Session {
13871387
is_install_upgrade,
1388-
runtime: TransactionRuntime::VmCasperV1,
1388+
runtime: params,
13891389
module_bytes: transaction_bytes.clone(),
1390-
transferred_value: 0,
1391-
seed: None,
13921390
};
13931391
let transaction_string_params = TransactionStrParams {
13941392
secret_key: "",
@@ -1410,12 +1408,11 @@ mod transaction {
14101408
chunked_args: None,
14111409
};
14121410

1411+
let params = TransactionRuntimeParams::VmCasperV1;
14131412
let transaction_builder_params = TransactionBuilderParams::Session {
14141413
is_install_upgrade,
14151414
transaction_bytes,
1416-
runtime: TransactionRuntime::VmCasperV1,
1417-
transferred_value: 0,
1418-
seed: None,
1415+
runtime: params,
14191416
};
14201417
let transaction =
14211418
create_transaction(transaction_builder_params, transaction_string_params, true);

lib/cli/transaction.rs

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use crate::{
1212
};
1313
use casper_types::{
1414
Digest, InitiatorAddr, SecretKey, Transaction, TransactionArgs, TransactionEntryPoint,
15-
TransactionRuntime,
15+
TransactionRuntimeParams,
1616
};
1717

1818
pub fn create_transaction(
@@ -32,7 +32,7 @@ pub fn create_transaction(
3232
let ttl = parse::ttl(transaction_params.ttl)?;
3333
let maybe_session_account = parse::session_account(&transaction_params.initiator_addr)?;
3434

35-
let is_v2_wasm = matches!(&builder_params, TransactionBuilderParams::Session { runtime, .. } if runtime == &TransactionRuntime::VmCasperV2);
35+
let is_v2_wasm = matches!(&builder_params, TransactionBuilderParams::Session { runtime, .. } if matches!(runtime, &TransactionRuntimeParams::VmCasperV2 { .. }));
3636

3737
let mut transaction_builder = make_transaction_builder(builder_params)?;
3838

@@ -272,28 +272,24 @@ pub fn make_transaction_builder(
272272
entity_hash,
273273
entry_point,
274274
runtime,
275-
transferred_value,
276275
} => {
277276
let transaction_builder = TransactionV1Builder::new_targeting_invocable_entity(
278277
entity_hash,
279278
entry_point,
280279
runtime,
281-
transferred_value,
282280
);
283281
Ok(transaction_builder)
284282
}
285283
TransactionBuilderParams::InvocableEntityAlias {
286284
entity_alias,
287285
entry_point,
288286
runtime,
289-
transferred_value,
290287
} => {
291288
let transaction_builder =
292289
TransactionV1Builder::new_targeting_invocable_entity_via_alias(
293290
entity_alias,
294291
entry_point,
295292
runtime,
296-
transferred_value,
297293
);
298294
Ok(transaction_builder)
299295
}
@@ -302,14 +298,12 @@ pub fn make_transaction_builder(
302298
maybe_entity_version,
303299
entry_point,
304300
runtime,
305-
transferred_value,
306301
} => {
307302
let transaction_builder = TransactionV1Builder::new_targeting_package(
308303
package_hash,
309304
maybe_entity_version,
310305
entry_point,
311306
runtime,
312-
transferred_value,
313307
);
314308
Ok(transaction_builder)
315309
}
@@ -318,15 +312,13 @@ pub fn make_transaction_builder(
318312
maybe_entity_version,
319313
entry_point,
320314
runtime,
321-
transferred_value,
322315
} => {
323316
let new_targeting_package_via_alias =
324317
TransactionV1Builder::new_targeting_package_via_alias(
325318
package_alias,
326319
maybe_entity_version,
327320
entry_point,
328321
runtime,
329-
transferred_value,
330322
);
331323
let transaction_builder = new_targeting_package_via_alias;
332324
Ok(transaction_builder)
@@ -335,16 +327,9 @@ pub fn make_transaction_builder(
335327
is_install_upgrade,
336328
transaction_bytes,
337329
runtime,
338-
transferred_value,
339-
seed,
340330
} => {
341-
let transaction_builder = TransactionV1Builder::new_session(
342-
is_install_upgrade,
343-
transaction_bytes,
344-
runtime,
345-
transferred_value,
346-
seed,
347-
);
331+
let transaction_builder =
332+
TransactionV1Builder::new_session(is_install_upgrade, transaction_bytes, runtime);
348333
Ok(transaction_builder)
349334
}
350335
TransactionBuilderParams::Transfer {

lib/cli/transaction_builder_params.rs

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
use casper_types::{
22
bytesrepr::Bytes, system::auction::Reservation, AddressableEntityHash, PackageHash, PublicKey,
3-
TransactionRuntime, TransferTarget, URef, U512,
3+
TransactionRuntimeParams, TransferTarget, URef, U512,
44
};
55

66
/// An enum representing the parameters needed to construct a transaction builder
@@ -77,21 +77,17 @@ pub enum TransactionBuilderParams<'a> {
7777
entity_hash: AddressableEntityHash,
7878
/// The entry point for the invocable entity transaction
7979
entry_point: &'a str,
80-
/// Transaction Runtime.
81-
runtime: TransactionRuntime,
82-
/// The amount to be transferred in the invocable entity transaction.
83-
transferred_value: u64,
80+
/// Transaction Runtime params.
81+
runtime: TransactionRuntimeParams,
8482
},
8583
/// Parameters for the invocable entity alias variant of the transaction builder
8684
InvocableEntityAlias {
8785
/// The entity alias for the invocable entity alias transaction
8886
entity_alias: &'a str,
8987
/// The entry_point for the invocable entity alias transaction
9088
entry_point: &'a str,
91-
/// Transaction Runtime.
92-
runtime: TransactionRuntime,
93-
/// Transferred value.
94-
transferred_value: u64,
89+
/// Transaction Runtime params.
90+
runtime: TransactionRuntimeParams,
9591
},
9692
/// Parameters for the package variant of the transaction builder
9793
Package {
@@ -102,9 +98,7 @@ pub enum TransactionBuilderParams<'a> {
10298
/// The entry_point for the package transaction
10399
entry_point: &'a str,
104100
/// Transaction Runtime.
105-
runtime: TransactionRuntime,
106-
/// Transferred value.
107-
transferred_value: u64,
101+
runtime: TransactionRuntimeParams,
108102
},
109103
/// Parameters for the package alias variant of the transaction builder
110104
PackageAlias {
@@ -114,10 +108,8 @@ pub enum TransactionBuilderParams<'a> {
114108
maybe_entity_version: Option<u32>,
115109
/// The entry point for the package alias transaction
116110
entry_point: &'a str,
117-
/// Transaction Runtime.
118-
runtime: TransactionRuntime,
119-
/// Transferred value.
120-
transferred_value: u64,
111+
/// Transaction Runtime params.
112+
runtime: TransactionRuntimeParams,
121113
},
122114
/// Parameters for the session variant of the transaction builder
123115
Session {
@@ -126,11 +118,7 @@ pub enum TransactionBuilderParams<'a> {
126118
/// The Bytes to be run by the execution engine for the session transaction
127119
transaction_bytes: Bytes,
128120
/// Transaction Runtime.
129-
runtime: TransactionRuntime,
130-
/// Transferred value.
131-
transferred_value: u64,
132-
/// The optional seed for the session transaction
133-
seed: Option<[u8; 32]>,
121+
runtime: TransactionRuntimeParams,
134122
},
135123
/// Parameters for the transfer variant of the transaction builder
136124
Transfer {

0 commit comments

Comments
 (0)