Browse Source

Tests on vectors of length 0

They should usually pass, since there are no elements to compare
Ian Goldberg 1 month ago
parent
commit
77d40c741d
2 changed files with 27 additions and 2 deletions
  1. 21 1
      tests/pubscalars_or_and_vec.rs
  2. 6 1
      tests/pubscalars_or_vec.rs

+ 21 - 1
tests/pubscalars_or_and_vec.rs

@@ -59,6 +59,26 @@ fn pubscalars_or_vec_test_vecsize_val(
     proof::verify(&instance, &proof, b"pubscalars_vec_test")
     proof::verify(&instance, &proof, b"pubscalars_vec_test")
 }
 }
 
 
+fn pubscalars_or_vec_emptyvec() {
+    pubscalars_or_vec_test_vecsize_val(0, 0, Some(0)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 1, Some(0)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 2, Some(0)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 3, Some(0)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 4, Some(0)).unwrap();
+
+    pubscalars_or_vec_test_vecsize_val(0, 0, Some(1)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 1, Some(1)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 2, Some(1)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 3, Some(1)).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 4, Some(1)).unwrap();
+
+    pubscalars_or_vec_test_vecsize_val(0, 0, None).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 1, None).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 2, None).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 3, None).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 4, None).unwrap();
+}
+
 fn pubscalars_or_vec_vecsize(vecsize: usize) {
 fn pubscalars_or_vec_vecsize(vecsize: usize) {
     pubscalars_or_vec_test_vecsize_val(vecsize, 0, Some(0)).unwrap_err();
     pubscalars_or_vec_test_vecsize_val(vecsize, 0, Some(0)).unwrap_err();
     pubscalars_or_vec_test_vecsize_val(vecsize, 1, Some(0)).unwrap_err();
     pubscalars_or_vec_test_vecsize_val(vecsize, 1, Some(0)).unwrap_err();
@@ -85,7 +105,7 @@ fn pubscalars_or_vec_vecsize(vecsize: usize) {
 
 
 #[test]
 #[test]
 fn pubscalars_or_and_vec_0_test() {
 fn pubscalars_or_and_vec_0_test() {
-    pubscalars_or_vec_vecsize(0);
+    pubscalars_or_vec_emptyvec();
 }
 }
 
 
 #[test]
 #[test]

+ 6 - 1
tests/pubscalars_or_vec.rs

@@ -42,7 +42,12 @@ fn pubscalars_or_vec_test_vecsize_val(
 
 
 #[test]
 #[test]
 fn pubscalars_or_vec_test() {
 fn pubscalars_or_vec_test() {
-    for vecsize in [0, 1, 2, 20] {
+    pubscalars_or_vec_test_vecsize_val(0, 0).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 1).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 2).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 3).unwrap();
+    pubscalars_or_vec_test_vecsize_val(0, 4).unwrap();
+    for vecsize in [1, 2, 20] {
         pubscalars_or_vec_test_vecsize_val(vecsize, 0).unwrap();
         pubscalars_or_vec_test_vecsize_val(vecsize, 0).unwrap();
         pubscalars_or_vec_test_vecsize_val(vecsize, 1).unwrap_err();
         pubscalars_or_vec_test_vecsize_val(vecsize, 1).unwrap_err();
         pubscalars_or_vec_test_vecsize_val(vecsize, 2).unwrap_err();
         pubscalars_or_vec_test_vecsize_val(vecsize, 2).unwrap_err();