diff options
Diffstat (limited to 'src/test/java/org/geojson/LngLatAltTest.java')
-rw-r--r-- | src/test/java/org/geojson/LngLatAltTest.java | 184 |
1 files changed, 184 insertions, 0 deletions
diff --git a/src/test/java/org/geojson/LngLatAltTest.java b/src/test/java/org/geojson/LngLatAltTest.java new file mode 100644 index 0000000..7045de7 --- /dev/null +++ b/src/test/java/org/geojson/LngLatAltTest.java @@ -0,0 +1,184 @@ +package org.geojson; + +import org.junit.Assert; +import org.junit.Test; + +public class LngLatAltTest { + + @Test + public void should_LngLatAlt_equals_without_alt() { + LngLatAlt first = new LngLatAlt(14.D, 13.D); + LngLatAlt second = new LngLatAlt(14.D, 13.D); + Assert.assertEquals(second, first); + } + + @Test + public void should_LngLatAlt_equals_with_alt() { + LngLatAlt first = new LngLatAlt(14.D, 13.D, 15D); + LngLatAlt second = new LngLatAlt(14.D, 13.D, 15D); + Assert.assertEquals(second, first); + } + + @Test + public void should_not_LngLatAlt_equals_with_alt() { + LngLatAlt first = new LngLatAlt(14.D, 13.D, 15D); + LngLatAlt second = new LngLatAlt(14.D, 13.D, 16D); + Assert.assertNotEquals(second, first); + } + + @Test + public void should_not_LngLatAlt_equals_without_alt() { + LngLatAlt first = new LngLatAlt(14.D, 14.D, 15D); + LngLatAlt second = new LngLatAlt(14.D, 13.D, 16D); + Assert.assertNotEquals(second, first); + } + + @Test + public void should_LngLatAlt_equals_with_additional_elements() { + LngLatAlt first = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + LngLatAlt second = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + Assert.assertEquals(second, first); + Assert.assertEquals(second.hashCode(), first.hashCode()); + } + + @Test + public void should_LngLatAlt_equals_with_additional_elements_and_null() { + LngLatAlt first = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + LngLatAlt second = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + Assert.assertEquals(second, first); + Assert.assertEquals(second.hashCode(), first.hashCode()); + } + + @Test + public void should_not_LngLatAlt_equals_without_additional_elements() { + LngLatAlt first = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + LngLatAlt second = new LngLatAlt(14.D, 14.D, 15D); + Assert.assertNotEquals(second, first); + Assert.assertNotEquals(second.hashCode(), first.hashCode()); + } + + @Test + public void should_not_LngLatAlt_equals_with_additional_elements_in_different_order() { + LngLatAlt first = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + LngLatAlt second = new LngLatAlt(14.D, 14.D, 15D, 17D, 16D); + Assert.assertNotEquals(second, first); + Assert.assertNotEquals(second.hashCode(), first.hashCode()); + } + + @Test + public void should_not_LngLatAlt_equals_with_additional_elements_and_different_size() { + LngLatAlt first = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D); + LngLatAlt second = new LngLatAlt(14.D, 14.D, 15D, 16D, 17D, 18D); + Assert.assertNotEquals(second, first); + Assert.assertNotEquals(second.hashCode(), first.hashCode()); + } + + @Test + public void should_LngLatAlt_throw_if_alt_not_specified_in_constructor() { + try { + new LngLatAlt(14.D, 14.D, Double.NaN, 16D, 17D); + Assert.fail("Additional elements are not allowed if altitude is Nan."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_alt_set_to_Nan_with_additional_elements() { + LngLatAlt lngLatAlt = new LngLatAlt(14.D, 14.D, 15.D, 16D, 17D); + + try { + lngLatAlt.setAltitude(Double.NaN); + Assert.fail("Additional elements are not allowed if altitude is Nan."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_additional_elements_set_with_missing_alt() { + LngLatAlt lngLatAlt = new LngLatAlt(14.D, 14.D); + + try { + lngLatAlt.setAdditionalElements(42); + Assert.fail("Additional elements are not allowed if altitude is Nan."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_additional_elements_set_with_Nan_alt() { + LngLatAlt lngLatAlt = new LngLatAlt(14.D, 14.D, Double.NaN); + + try { + lngLatAlt.setAdditionalElements(42); + Assert.fail("Additional elements are not allowed if altitude is Nan."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_any_additional_elements_constructed_to_Nan() { + try { + new LngLatAlt(14.D, 14.D, 15.D, 16.D, Double.NaN, 17.D); + Assert.fail("Additional elements are not allowed to be Nan."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_any_additional_elements_constructed_to_Positive_Infinity() { + try { + new LngLatAlt(14.D, 14.D, 15.D, 16.D, Double.POSITIVE_INFINITY, 17.D); + Assert.fail("Additional elements are not allowed to be positive infinity."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_any_additional_elements_constructed_to_Negative_Infinity() { + try { + new LngLatAlt(14.D, 14.D, 15.D, 16.D, Double.NEGATIVE_INFINITY, 17.D); + Assert.fail("Additional elements are not allowed to be positive infinity."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_any_additional_elements_set_to_Nan() { + LngLatAlt lngLatAlt = new LngLatAlt(14.D, 14.D, 15.D); + try { + lngLatAlt.setAdditionalElements(16.D, Double.NaN, 17.D); + Assert.fail("Additional elements are not allowed to be Nan."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_any_additional_elements_set_to_Positive_Infinity() { + LngLatAlt lngLatAlt = new LngLatAlt(14.D, 14.D, 15.D); + try { + lngLatAlt.setAdditionalElements(16.D, Double.POSITIVE_INFINITY, 17.D); + Assert.fail("Additional elements are not allowed to be positive infinity."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } + + @Test + public void should_LngLatAlt_throw_if_any_additional_elements_set_to_Negative_Infinity() { + LngLatAlt lngLatAlt = new LngLatAlt(14.D, 14.D, 15.D); + try { + lngLatAlt.setAdditionalElements(16.D, Double.NEGATIVE_INFINITY, 17.D); + Assert.fail("Additional elements are not allowed to be positive infinity."); + } catch (IllegalArgumentException e) { + Assert.assertTrue("Expected exception.", true); + } + } +}
\ No newline at end of file |