package org.jdesktop.swingx.util; import static org.junit.Assert.fail; import org.junit.Test; @SuppressWarnings("nls") public class ContractTest { @Test public void testAsNotNull() { //expected good cases with Objects Contract.asNotNull("1", "Works"); Contract.asNotNull(new String[]{}, "Works"); Contract.asNotNull(new String[0], "Works"); Contract.asNotNull(new String[]{"1"}, "Works"); Contract.asNotNull(new String[][]{}, "Works"); Contract.asNotNull(new String[0][0], "Works"); Contract.asNotNull(new String[][]{new String[]{}}, "Works"); Contract.asNotNull(new String[][]{new String[0]}, "Works"); Contract.asNotNull(new String[][]{new String[]{"1"}}, "Works"); //expected failure cases with Objects try { Contract.asNotNull(null, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } try { Contract.asNotNull(new String[]{null}, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } try { Contract.asNotNull(new String[1], "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } try { Contract.asNotNull(new String[]{"1", null}, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } try { Contract.asNotNull(new String[]{"1", null, "2"}, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } try { Contract.asNotNull(new String[][]{new String[1]}, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } //expected success with primitives Contract.asNotNull(new int[]{}, "Works"); Contract.asNotNull(new int[0], "Works"); Contract.asNotNull(new int[]{1}, "Works"); Contract.asNotNull(new int[1], "Works"); Contract.asNotNull(new int[1][0], "Works"); Contract.asNotNull(new int[1][1], "Works"); //expected failure cases with primitives int[] badArray = null; try { Contract.asNotNull(badArray, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } int[][] badArray2 = null; try { Contract.asNotNull(badArray2, "Expected failure"); fail("Expected NullPointerException"); } catch (NullPointerException e) { //success } } }