This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new 6533074 Unit tests.
6533074 is described below
commit 6533074713a07806ce4ca8bec9409ffcac4b32c2
Author: JamesBognar <[email protected]>
AuthorDate: Fri Jul 23 16:17:23 2021 -0400
Unit tests.
---
.../juneau/assertions/AssertionPredicate.java | 2 +-
.../juneau/assertions/AssertionPredicates.java | 2 +-
.../assertions/FluentPrimitiveArrayAssertion.java | 73 +++++++-------
.../juneau/assertions/PrimitiveArrayAssertion.java | 4 -
.../assertions/PrimitiveArrayAssertion_Test.java | 109 ++++++++++++---------
.../juneau/assertions/StringAssertion_Test.java | 1 +
.../assertions/StringListAssertion_Test.java | 4 +-
.../juneau/assertions/ThrowableAssertion_Test.java | 1 +
8 files changed, 110 insertions(+), 86 deletions(-)
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicate.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicate.java
index 70a840a..20f1242 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicate.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicate.java
@@ -27,7 +27,7 @@ import org.apache.juneau.cp.*;
* <ul>
* <li>{@link FluentObjectAssertion#is(Predicate)}
* <li>{@link FluentArrayAssertion#is(Predicate...)}
- * <li>{@link FluentPrimitiveArrayAssertion#each(Predicate...)}
+ * <li>{@link FluentPrimitiveArrayAssertion#is(Predicate...)}
* <li>{@link FluentListAssertion#each(Predicate...)}
* </ul>
*
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicates.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicates.java
index edf3715..64a4778 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicates.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/AssertionPredicates.java
@@ -32,7 +32,7 @@ import org.apache.juneau.internal.*;
* <ul>
* <li>{@link FluentObjectAssertion#is(Predicate)}
* <li>{@link FluentArrayAssertion#is(Predicate...)}
- * <li>{@link FluentPrimitiveArrayAssertion#each(Predicate...)}
+ * <li>{@link FluentPrimitiveArrayAssertion#is(Predicate...)}
* <li>{@link FluentListAssertion#each(Predicate...)}
* </ul>
*
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentPrimitiveArrayAssertion.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentPrimitiveArrayAssertion.java
index a7b0b58..44fb2ef 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentPrimitiveArrayAssertion.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/FluentPrimitiveArrayAssertion.java
@@ -82,8 +82,11 @@ public class FluentPrimitiveArrayAssertion<E,T,R> extends
FluentObjectAssertion<
*/
public FluentPrimitiveArrayAssertion(Assertion creator, T contents, R
returns) {
super(creator, contents, returns);
- if (contents != null && ! contents.getClass().isArray())
- throw new BasicAssertionError(MSG_objectWasNotAnArray,
contents.getClass());
+ if (contents != null) {
+ Class<?> c = contents.getClass();
+ if (! (c.isArray() &&
c.getComponentType().isPrimitive()))
+ throw new
BasicAssertionError(MSG_objectWasNotAnArray, contents.getClass());
+ }
}
//-----------------------------------------------------------------------------------------------------------------
@@ -132,6 +135,39 @@ public class FluentPrimitiveArrayAssertion<E,T,R> extends
FluentObjectAssertion<
//-----------------------------------------------------------------------------------------------------------------
/**
+ * Asserts that the contents of this list contain the specified values.
+ *
+ * @param entries The expected entries in this list.
+ * @return The response object (for method chaining).
+ * @throws AssertionError If assertion failed.
+ */
+ @SuppressWarnings("unchecked")
+ public R has(E...entries) throws AssertionError {
+ assertArgNotNull("entries", entries);
+ Predicate<E>[] p =
stream(entries).map(AssertionPredicates::eq).toArray(Predicate[]::new);
+ return is(p);
+ }
+
+ /**
+ * Asserts that the contents of this list pass the specified tests.
+ *
+ * @param tests The tests to run. <jk>null</jk> entries are ignored.
+ * @return The response object (for method chaining).
+ * @throws AssertionError If assertion failed.
+ */
+ @SafeVarargs
+ public final R is(Predicate<E>...tests) throws AssertionError {
+ isSize(tests.length);
+ for (int i = 0, j = length2(); i < j; i++) {
+ Predicate<E> t = tests[i];
+ if (t != null)
+ if (! t.test(at(i)))
+ throw
error(MSG_arrayDidNotContainExpectedValueAt, i, getFailureMessage(t, at(i)));
+ }
+ return returns();
+ }
+
+ /**
* Asserts that at least one value in the array passes the specified
test.
*
* @param test The predicate test.
@@ -213,37 +249,6 @@ public class FluentPrimitiveArrayAssertion<E,T,R> extends
FluentObjectAssertion<
}
/**
- * Asserts that the array contains the expected entries.
- *
- * @param entries The values to check for. Uses {@link
Object#equals(Object)} for equivalency on entries.
- * @return The object to return after the test.
- * @throws AssertionError If assertion failed.
- */
- @SuppressWarnings("unchecked")
- public R is(E...entries) throws AssertionError {
- Predicate<E>[] p =
stream(entries).map(AssertionPredicates::eq).toArray(Predicate[]::new);
- return each(p);
- }
-
- /**
- * Asserts that the entries in this array pass the specified tests for
each entry.
- *
- * @param tests The tests to run. <jk>null</jk> values are ignored.
- * @return The object to return after the test.
- * @throws AssertionError If assertion failed.
- */
- @SuppressWarnings("unchecked")
- public R each(Predicate<E>...tests) throws AssertionError {
- length().is(tests.length);
- for (int i = 0, j = length2(); i < j; i++) {
- Predicate<E> t = tests[i];
- if (t != null && ! t.test(at(i)))
- throw
error(MSG_arrayDidNotContainExpectedValueAt, i, getFailureMessage(t, at(i)));
- }
- return returns();
- }
-
- /**
* Asserts that the array does not contain the expected value.
*
* @param entry The value to check for.
@@ -312,6 +317,6 @@ public class FluentPrimitiveArrayAssertion<E,T,R> extends
FluentObjectAssertion<
public String toString() {
if (valueIsNull())
return null;
- return
STRINGIFIERS.getOrDefault(value().getClass().getComponentType(), (x) ->
x.toString()).apply(value());
+ return
STRINGIFIERS.get(value().getClass().getComponentType()).apply(value());
}
}
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/PrimitiveArrayAssertion.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/PrimitiveArrayAssertion.java
index bfdf99a..0841562 100644
---
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/PrimitiveArrayAssertion.java
+++
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/assertions/PrimitiveArrayAssertion.java
@@ -12,8 +12,6 @@
//
***************************************************************************************************************************
package org.apache.juneau.assertions;
-import static org.apache.juneau.assertions.Assertions.*;
-
import java.io.*;
import org.apache.juneau.internal.*;
@@ -54,8 +52,6 @@ public class PrimitiveArrayAssertion<E,T> extends
FluentPrimitiveArrayAssertion<
*/
public PrimitiveArrayAssertion(T value) {
super(value, null);
- Class<?> c = value == null ? null : value.getClass();
- assertArg(c == null || c.isArray() &&
c.getComponentType().isPrimitive(), "Value wasn't a primitive array.");
}
//-----------------------------------------------------------------------------------------------------------------
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/assertions/PrimitiveArrayAssertion_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/assertions/PrimitiveArrayAssertion_Test.java
index 0b6a65c..c999a2b 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/assertions/PrimitiveArrayAssertion_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/assertions/PrimitiveArrayAssertion_Test.java
@@ -16,6 +16,8 @@ import static org.apache.juneau.assertions.Assertions.*;
import static org.apache.juneau.assertions.AssertionPredicates.*;
import static org.junit.runners.MethodSorters.*;
+import java.util.function.*;
+
import org.apache.juneau.json.*;
import org.apache.juneau.serializer.*;
import org.junit.*;
@@ -52,7 +54,8 @@ public class PrimitiveArrayAssertion_Test {
@Test
public void a03_invalidUsage() throws Exception {
- assertThrown(()->new FluentPrimitiveArrayAssertion<>("foo",
null)).message().oneLine().is("Object was not an array.
Actual='java.lang.String'.");
+
assertThrown(()->PrimitiveArrayAssertion.create("foo")).message().oneLine().is("Object
was not an array. Actual='java.lang.String'.");
+ assertThrown(()->PrimitiveArrayAssertion.create(new
Integer[0])).message().oneLine().is("Object was not an array.
Actual='[Ljava.lang.Integer;'.");
}
//-----------------------------------------------------------------------------------------------------------------
@@ -271,67 +274,85 @@ public class PrimitiveArrayAssertion_Test {
}
@Test
- public void cb01_isEmpty() throws Exception {
- byte[] x1={}, x2={1,2}, nil = null;
- assertThrown(()->byteArray(nil).isEmpty()).message().is("Value
was null.");
- byteArray(x1).isEmpty();
- assertThrown(()->byteArray(x2).isEmpty()).message().is("Array
was not empty.");
+ public void cb01_is_predicates() throws Exception {
+ int[] x1 = {1,2}, nil = null;
+ intArray(x1).is(eq("1"),eq("2"));
+ intArray(x1).is(eq(1),eq(2));
+
assertThrown(()->intArray(x1).is(eq("1"),eq("3"))).message().oneLine().is("Array
did not contain expected value at index 1. Value did not match expected.
Expect='3'. Actual='2'.");
+
assertThrown(()->intArray(nil).is(eq("1"),eq("3"))).message().is("Value was
null.");
+ intArray(x1).is((Predicate<Integer>)null,null);
+ }
+
+ @Test
+ public void cb02_any() throws Exception {
+ int[] x1 = {2,3,1}, nil = null;
+ intArray(x1).any(x -> x .equals(3));
+ intArray(x1).any(eq(3));
+ assertThrown(()->intArray(x1).any(x ->
x.equals(4))).message().oneLine().is("Array did not contain any matching value.
Value='[2, 3, 1]'.");
+ assertThrown(()->intArray(x1).any(null)).message().is("Argument
'test' cannot be null.");
+
assertThrown(()->intArray(nil).any(x->true)).message().is("Value was null.");
}
@Test
- public void cb02_isNotEmpty() throws Exception {
- byte[] x1={}, x2={1,2}, nil = null;
-
assertThrown(()->byteArray(nil).isNotEmpty()).message().is("Value was null.");
-
assertThrown(()->byteArray(x1).isNotEmpty()).message().is("Array was empty.");
- byteArray(x2).isNotEmpty();
+ public void cb03_all() throws Exception {
+ int[] x1 = {2,3,1}, nil = null;
+ intArray(x1).all(x -> x < 4);
+ assertThrown(()->intArray(x1).all(x -> x <
3)).message().oneLine().is("Array contained non-matching value at index 1.
Unexpected value: '3'.");
+
assertThrown(()->intArray(x1).all(ne(3))).message().oneLine().is("Array
contained non-matching value at index 1. Value unexpectedly matched.
Value='3'.");
+ assertThrown(()->intArray(x1).all(null)).message().is("Argument
'test' cannot be null.");
+
assertThrown(()->intArray(nil).all(x->true)).message().is("Value was null.");
}
@Test
- public void cb03_contains() throws Exception {
- byte[] x1 = {1,2}, nil = null;
- byteArray(x1).contains((byte)1);
-
assertThrown(()->byteArray(x1).contains((byte)3)).message().oneLine().is("Array
did not contain expected value. Expect='3'. Actual='[1, 2]'.");
-
assertThrown(()->byteArray(nil).contains((byte)3)).message().is("Value was
null.");
-
assertThrown(()->byteArray(nil).contains(null)).message().is("Value was null.");
+ public void cb04_isEmpty() throws Exception {
+ int[] x1={}, x2={1,2}, nil = null;
+ intArray(x1).isEmpty();
+ assertThrown(()->intArray(x2).isEmpty()).message().is("Array
was not empty.");
+ assertThrown(()->intArray(nil).isEmpty()).message().is("Value
was null.");
}
@Test
- public void cb04_doesNotContain() throws Exception {
- byte[] x1 = {1,2}, nil = null;
- byteArray(x1).doesNotContain((byte)3);
- byteArray(x1).doesNotContain(null);
-
assertThrown(()->byteArray(nil).doesNotContain((byte)3)).message().is("Value
was null.");
-
assertThrown(()->byteArray(x1).doesNotContain((byte)1)).message().oneLine().is("Array
contained unexpected value. Unexpected='1'. Actual='[1, 2]'.");
+ public void cb05_isNotEmpty() throws Exception {
+ int[] x1={}, x2={1,2}, nil = null;
+ intArray(x2).isNotEmpty();
+ assertThrown(()->intArray(x1).isNotEmpty()).message().is("Array
was empty.");
+
assertThrown(()->intArray(nil).isNotEmpty()).message().is("Value was null.");
}
@Test
- public void cb05_isSize() throws Exception {
- byte[] x1={}, x2={1,2}, nil = null;
- byteArray(x1).isSize(0);
- byteArray(x2).isSize(2);
- assertThrown(()->byteArray(nil).isSize(0)).message().is("Value
was null.");
-
assertThrown(()->byteArray(x1).isSize(2)).message().oneLine().oneLine().is("Array
did not have the expected size. Expect=2. Actual=0.");
-
assertThrown(()->byteArray(x2).isSize(0)).message().oneLine().oneLine().is("Array
did not have the expected size. Expect=0. Actual=2.");
+ public void cb06_contains() throws Exception {
+ int[] x1 = {1,2}, nil = null;
+ intArray(x1).contains(1);
+
assertThrown(()->intArray(x1).contains(3)).message().oneLine().is("Array did
not contain expected value. Expect='3'. Actual='[1, 2]'.");
+ assertThrown(()->intArray(nil).contains(3)).message().is("Value
was null.");
+
assertThrown(()->intArray(nil).contains(null)).message().is("Value was null.");
}
@Test
- public void cb06_any() throws Exception {
- byte[] x1 = {2,3,1}, nil = null;
- byteArray(x1).any(x -> x.equals((byte)3));
- byteArray(x1).any(eq((byte)3));
- assertThrown(()->byteArray(x1).any(x ->
x.equals((byte)4))).message().oneLine().is("Array did not contain any matching
value. Value='[2, 3, 1]'.");
-
assertThrown(()->byteArray(x1).any(null)).message().is("Argument 'test' cannot
be null.");
-
assertThrown(()->byteArray(nil).any(x->true)).message().is("Value was null.");
+ public void cb07_doesNotContain() throws Exception {
+ int[] x1 = {1,2}, nil = null;
+ intArray(x1).doesNotContain(3);
+
assertThrown(()->intArray(x1).doesNotContain(1)).message().oneLine().is("Array
contained unexpected value. Unexpected='1'. Actual='[1, 2]'.");
+
assertThrown(()->intArray(nil).doesNotContain(3)).message().is("Value was
null.");
}
@Test
- public void cb07_all() throws Exception {
- byte[] x1 = {2,3,1}, nil = null;
- byteArray(x1).all(x -> x < 4);
- assertThrown(()->byteArray(x1).all(x -> x <
3)).message().oneLine().is("Array contained non-matching value at index 1.
Unexpected value: '3'.");
-
assertThrown(()->byteArray(x1).all(ne((byte)3))).message().oneLine().is("Array
contained non-matching value at index 1. Value unexpectedly matched.
Value='3'.");
-
assertThrown(()->byteArray(x1).all(null)).message().is("Argument 'test' cannot
be null.");
-
assertThrown(()->byteArray(nil).all(x->true)).message().is("Value was null.");
+ public void cb08_isSize() throws Exception {
+ int[] x1={}, x2={1,2}, nil = null;
+ intArray(x1).isSize(0);
+ intArray(x2).isSize(2);
+
assertThrown(()->intArray(x1).isSize(2)).message().oneLine().is("Array did not
have the expected size. Expect=2. Actual=0.");
+
assertThrown(()->intArray(x2).isSize(0)).message().oneLine().is("Array did not
have the expected size. Expect=0. Actual=2.");
+ assertThrown(()->intArray(nil).isSize(0)).message().is("Value
was null.");
}
+ @Test
+ public void cb09_has() throws Exception {
+ int[] x={1,2}, nil = null;
+ intArray(x).has(1,2);
+
assertThrown(()->intArray(x).has(1,3)).message().oneLine().is("Array did not
contain expected value at index 1. Value did not match expected. Expect='3'.
Actual='2'.");
+
assertThrown(()->intArray(x).has(1)).message().oneLine().is("Array did not have
the expected size. Expect=1. Actual=2.");
+
assertThrown(()->intArray(x).has((Integer[])null)).message().oneLine().is("Argument
'entries' cannot be null.");
+
assertThrown(()->intArray(nil).has(1)).message().oneLine().is("Value was
null.");
+ }
}
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/assertions/StringAssertion_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/assertions/StringAssertion_Test.java
index d16fbf8..e698144 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/assertions/StringAssertion_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/assertions/StringAssertion_Test.java
@@ -314,6 +314,7 @@ public class StringAssertion_Test {
assertThrown(()->test(x).isIc(null)).message().oneLine().is("String differed at
position 0. Expect='null'. Actual='foobar'.");
}
+ @Test
public void cb02_isNotIc() throws Exception {
String x = "foobar", nil = null;
test(x).isNotIc("foobaz");
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/assertions/StringListAssertion_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/assertions/StringListAssertion_Test.java
index f90a9c9..a9cd48a 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/assertions/StringListAssertion_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/assertions/StringListAssertion_Test.java
@@ -153,14 +153,14 @@ public class StringListAssertion_Test {
public void bd01b_join_wDelim() throws Exception {
List<String> x = list("1","2"), nil = null;
test(x).join(",").isString("1,2");
- test(nil).join().isNull();
+ test(nil).join(",").isNull();
}
@Test
public void bd01c_join_wDelim_wXfix() throws Exception {
List<String> x = list("1","2"), nil = null;
test(x).join(",","[","]").isString("[1,2]");
- test(nil).join().isNull();
+ test(nil).join(",","[","]").isNull();
}
//-----------------------------------------------------------------------------------------------------------------
diff --git
a/juneau-utest/src/test/java/org/apache/juneau/assertions/ThrowableAssertion_Test.java
b/juneau-utest/src/test/java/org/apache/juneau/assertions/ThrowableAssertion_Test.java
index 7d399aa..1d3ddd2 100644
---
a/juneau-utest/src/test/java/org/apache/juneau/assertions/ThrowableAssertion_Test.java
+++
b/juneau-utest/src/test/java/org/apache/juneau/assertions/ThrowableAssertion_Test.java
@@ -157,6 +157,7 @@ public class ThrowableAssertion_Test {
test(x1).causedBy(RuntimeException.class).message().is("1");
test(x2).causedBy(RuntimeException.class).isNull();
test(nil).causedBy(RuntimeException.class).isNull();
+
assertThrown(()->test(x1).causedBy(IOException.class)).message().oneLine().is("Caused-by
exception not of expected type. Expected='java.io.IOException'.
Actual='java.lang.RuntimeException'.");
}
@Test