Skip to content

Commit 272e881

Browse files
committed
Fix vm tests
1 parent d30535d commit 272e881

File tree

1 file changed

+26
-13
lines changed

1 file changed

+26
-13
lines changed

packages/vm/src/testing/mock.rs

Lines changed: 26 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ use bech32::{decode, encode, FromBase32, ToBase32, Variant};
22
use cosmwasm_std::{
33
Addr, BlockInfo, Coin, ContractInfo, Env, MessageInfo, Timestamp, TransactionInfo,
44
};
5+
use sha2::{Digest, Sha256};
56

67
use super::querier::MockQuerier;
78
use super::storage::MockStorage;
@@ -218,31 +219,39 @@ mod tests {
218219

219220
#[test]
220221
fn canonical_address_works() {
221-
let api = MockApi::default();
222+
let api = MockApi::default().with_prefix("osmo");
222223

223-
api.canonical_address("foobar123").0.unwrap();
224+
api.canonical_address("osmo186kh7c0k0gh4ww0wh4jqc4yhzu7n7dhswe845d")
225+
.0
226+
.unwrap();
224227

225228
// is case insensitive
226-
let data1 = api.canonical_address("foo123").0.unwrap();
227-
let data2 = api.canonical_address("FOO123").0.unwrap();
229+
let data1 = api
230+
.canonical_address("osmo186kh7c0k0gh4ww0wh4jqc4yhzu7n7dhswe845d")
231+
.0
232+
.unwrap();
233+
let data2 = api
234+
.canonical_address("OSMO186KH7C0K0GH4WW0WH4JQC4YHZU7N7DHSWE845D")
235+
.0
236+
.unwrap();
228237
assert_eq!(data1, data2);
229238
}
230239

231240
#[test]
232241
fn canonicalize_and_humanize_restores_original() {
233-
let api = MockApi::default();
242+
let api = MockApi::default().with_prefix("juno");
234243

235244
// simple
236-
let original = "shorty";
237-
let canonical = api.canonical_address(original).0.unwrap();
245+
let original = api.addr_make("shorty");
246+
let canonical = api.canonical_address(&original).0.unwrap();
238247
let (recovered, _gas_cost) = api.human_address(&canonical);
239248
assert_eq!(recovered.unwrap(), original);
240249

241250
// normalizes input
242-
let original = String::from("CosmWasmChef");
251+
let original = "JUNO1MEPRU9FUQ4E65856ARD6068MFSFRWPGEMD0C3R";
243252
let canonical = api.canonical_address(&original).0.unwrap();
244253
let recovered = api.human_address(&canonical).0.unwrap();
245-
assert_eq!(recovered, "cosmwasmchef");
254+
assert_eq!(recovered, original.to_lowercase());
246255

247256
// Long input (Juno contract address)
248257
let original =
@@ -255,7 +264,7 @@ mod tests {
255264
#[test]
256265
fn human_address_input_length() {
257266
let api = MockApi::default();
258-
let input = vec![61; 11];
267+
let input = vec![61; 256]; // too long
259268
let (result, _gas_info) = api.human_address(&input);
260269
match result.unwrap_err() {
261270
BackendError::UserErr { .. } => {}
@@ -266,9 +275,11 @@ mod tests {
266275
#[test]
267276
fn canonical_address_min_input_length() {
268277
let api = MockApi::default();
269-
let human = "1";
278+
let human = "cosmwasm1pj90vm";
270279
match api.canonical_address(human).0.unwrap_err() {
271-
BackendError::UserErr { msg } => assert!(msg.contains("too short")),
280+
BackendError::UserErr { msg } => {
281+
assert!(msg.contains("address length"))
282+
}
272283
err => panic!("Unexpected error: {err:?}"),
273284
}
274285
}
@@ -278,7 +289,9 @@ mod tests {
278289
let api = MockApi::default();
279290
let human = "longer-than-the-address-length-supported-by-this-api-longer-than-54";
280291
match api.canonical_address(human).0.unwrap_err() {
281-
BackendError::UserErr { msg } => assert!(msg.contains("too long")),
292+
BackendError::UserErr { msg } => {
293+
assert!(msg.contains("address length"))
294+
}
282295
err => panic!("Unexpected error: {err:?}"),
283296
}
284297
}

0 commit comments

Comments
 (0)