Skip to content

Commit 4875ec6

Browse files
committed
add more unit test
1 parent 22572d1 commit 4875ec6

File tree

4 files changed

+28
-4
lines changed

4 files changed

+28
-4
lines changed

packages/vm/src/cache.rs

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ mod test {
116116
}
117117

118118
#[test]
119-
fn test_catch() {
119+
fn test_cache_catch() {
120120
let mut cache = Cache::new(CacheOptions { cache_size: 10000 });
121121
let wasm = wat2wasm(
122122
r#"(module
@@ -142,6 +142,12 @@ mod test {
142142
let (_, is_hit) = get_instance_without_err(&mut cache, &wasm2);
143143
assert_eq!(false, is_hit);
144144

145+
let (_, is_hit) = get_instance_without_err(&mut cache, &wasm);
146+
assert_eq!(true, is_hit);
147+
148+
let (_, is_hit) = get_instance_without_err(&mut cache, &wasm2);
149+
assert_eq!(true, is_hit);
150+
145151
let ser1 = match instance1.module().serialize() {
146152
Ok(r) => r,
147153
Err(_) => panic!("Fail to serialize module"),
@@ -156,7 +162,7 @@ mod test {
156162
}
157163

158164
#[test]
159-
fn test_lru_catch() {
165+
fn test_cache_size() {
160166
let mut cache = Cache::new(CacheOptions { cache_size: 2 });
161167
let wasm1 = wat2wasm(
162168
r#"(module
@@ -209,5 +215,13 @@ mod test {
209215
// miss [2 1] => [3 2]
210216
let (_, is_hit) = get_instance_without_err(&mut cache, &wasm3);
211217
assert_eq!(false, is_hit);
218+
219+
cache = Cache::new(CacheOptions { cache_size: 0 });
220+
221+
let (_, is_hit) = get_instance_without_err(&mut cache, &wasm1);
222+
assert_eq!(false, is_hit);
223+
224+
let (_, is_hit) = get_instance_without_err(&mut cache, &wasm1);
225+
assert_eq!(false, is_hit);
212226
}
213227
}

packages/vm/src/calls.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ mod test {
211211
let code = compile(&wasm).unwrap();
212212
let mut cache = Cache::new(CacheOptions { cache_size: 10000 });
213213
let querier = MockQuerier {};
214-
let out_of_gas_err = run(&mut cache, &code, 0, true, querier).unwrap_err();
214+
let out_of_gas_err = run(&mut cache, &code, 10, true, querier).unwrap_err();
215215
assert_eq!(out_of_gas_err, Error::OutOfGasError);
216216
}
217217
}

packages/vm/src/imports.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -373,11 +373,22 @@ mod test {
373373

374374
#[test]
375375
fn test_wrapper_fn() {
376+
let querier = MockQuerier {};
377+
let owasm_env = Environment::new(querier);
376378
assert_eq!(Ok(()), require_mem_range(2, 1));
377379
assert_eq!(Err(Error::MemoryOutOfBoundError), require_mem_range(1, 2));
378380
assert_eq!(Ok(()), require_mem_range(usize::MAX, usize::MAX));
379381
assert_eq!(Ok(usize::MAX), safe_convert(usize::MAX as u64));
382+
assert_eq!(Err(Error::ConvertTypeOutOfBound), safe_convert::<_, usize>(-1));
380383
assert_eq!(Err(Error::ConvertTypeOutOfBound), safe_convert::<_, usize>(i64::MIN));
384+
assert_eq!(Err(Error::ConvertTypeOutOfBound), safe_convert::<_, i64>(usize::MAX));
385+
assert_eq!(Ok(10), safe_add(4, 6));
386+
assert_eq!(Ok(i64::MAX as usize + 1), safe_add(i64::MAX, 1));
387+
assert_eq!(Err(Error::ConvertTypeOutOfBound), safe_add(-1, 6));
388+
assert_eq!(Err(Error::ConvertTypeOutOfBound), safe_add(5, -10));
389+
assert_eq!(Err(Error::ConvertTypeOutOfBound), safe_add(usize::MAX as i64, 1));
390+
assert_eq!(Err(Error::MemoryOutOfBoundError), read_memory(&owasm_env, -1, 1));
391+
assert_eq!(Err(Error::MemoryOutOfBoundError), write_memory(&owasm_env, -1, vec! {}))
381392
}
382393

383394
#[test]

packages/vm/src/vm.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,6 @@ mod test {
231231

232232
#[test]
233233
fn test_env_querier() {
234-
println!("{}", Error::OutOfGasError);
235234
let env = Environment::new(MockQuerier {});
236235
assert_eq!(300, env.with_querier_from_context(|querier| querier.get_span_size()));
237236
}

0 commit comments

Comments
 (0)