diff options
| author | Tim Chevalier <chevalier@alum.wellesley.edu> | 2011-08-30 16:22:21 -0700 |
|---|---|---|
| committer | Tim Chevalier <chevalier@alum.wellesley.edu> | 2011-08-30 16:39:22 -0700 |
| commit | 268533a92055200a1b6a8bdbd916d620fa8306eb (patch) | |
| tree | a8c85f34962d6dc0dc6a987456652cab7c810611 /src/test/stdtest | |
| parent | d37e8cfc6723f0f2dbefdb686a7e220062c1374c (diff) | |
| download | rust-268533a92055200a1b6a8bdbd916d620fa8306eb.tar.gz rust-268533a92055200a1b6a8bdbd916d620fa8306eb.zip | |
Add a precondition on vec::zip
vec::zip now has the precondition that the two argument vectors are the same length. Changed uses of it to reflect that. Also added a few vector-enumerating utilities to vec.rs, which necessitated in making some functions in u8 declared-pure.
Diffstat (limited to 'src/test/stdtest')
| -rw-r--r-- | src/test/stdtest/qsort.rs | 6 | ||||
| -rw-r--r-- | src/test/stdtest/test.rs | 1 | ||||
| -rw-r--r-- | src/test/stdtest/vec.rs | 2 |
3 files changed, 8 insertions, 1 deletions
diff --git a/src/test/stdtest/qsort.rs b/src/test/stdtest/qsort.rs index 250d77a4593..32109dc1caa 100644 --- a/src/test/stdtest/qsort.rs +++ b/src/test/stdtest/qsort.rs @@ -49,7 +49,11 @@ fn test_simple() { fn lteq(a: &int, b: &int) -> bool { int::le(a, b) } sort::quick_sort(lteq, names); - let pairs = vec::zip(expected, vec::from_mut(names)); + let immut_names = vec::from_mut(names); + + // Silly, but what else can we do? + check vec::same_length(expected, immut_names); + let pairs = vec::zip(expected, immut_names); for (a, b) in pairs { log #fmt["%d %d", a, b]; assert (a == b); } } diff --git a/src/test/stdtest/test.rs b/src/test/stdtest/test.rs index e32105c2f0a..a1fc943609e 100644 --- a/src/test/stdtest/test.rs +++ b/src/test/stdtest/test.rs @@ -86,6 +86,7 @@ fn sort_tests() { "test::ignored_tests_result_in_ignored", "test::parse_ignored_flag", "test::sort_tests"]; + check vec::same_length(expected, filtered); let pairs = vec::zip(expected, filtered); diff --git a/src/test/stdtest/vec.rs b/src/test/stdtest/vec.rs index 2f9e691b62d..3d1df459067 100644 --- a/src/test/stdtest/vec.rs +++ b/src/test/stdtest/vec.rs @@ -302,6 +302,8 @@ fn test_any_and_all() { fn test_zip_unzip() { let v1 = [1, 2, 3]; let v2 = [4, 5, 6]; + + check same_length(v1, v2); // Silly, but what else can we do? let z1 = vec::zip(v1, v2); assert ((1, 4) == z1[0]); |
