Advertisement
Guest User

Untitled

a guest
Oct 16th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.39 KB | None | 0 0
  1. import static org.junit.Assert.assertFalse;
  2. import static org.junit.Assert.assertTrue;
  3.  
  4. import org.junit.Before;
  5. import org.junit.Test;
  6.  
  7. import edu.princeton.cs.algs4.Point2D;
  8. import edu.princeton.cs.algs4.RectHV;
  9.  
  10. public class PointSETTest {
  11.  
  12. private PointSET p;
  13.  
  14. @Before
  15. public void before() {
  16. p = new PointSET();
  17. }
  18.  
  19. @Test
  20. public void isEmptyTest() {
  21. assertTrue(p.isEmpty());
  22. }
  23.  
  24. @Test
  25. public void emptySizeTest() {
  26. assertTrue(p.size() == 0);
  27. }
  28.  
  29. @Test
  30. public void nonEmptySizeTest() {
  31. p.insert(new Point2D(0,0));
  32. assertTrue(p.size() == 1);
  33. p.insert(new Point2D(0,1));
  34. assertTrue(p.size() == 2);
  35. p.insert(new Point2D(0,.5));
  36. assertTrue(p.size() == 3);
  37. }
  38.  
  39. @Test(expected=IllegalArgumentException.class)
  40. public void insertNullTest() {
  41. p.insert(null);
  42. }
  43.  
  44. @Test
  45. public void duplicateInsertTest() {
  46. p.insert(new Point2D(0,0));
  47. p.insert(new Point2D(0,0));
  48. p.insert(new Point2D(0,0));
  49. p.insert(new Point2D(0,0));
  50. p.insert(new Point2D(0,0));
  51. p.insert(new Point2D(0,0));
  52. assertTrue(p.size() == 1);
  53. }
  54.  
  55. @Test(expected=IllegalArgumentException.class)
  56. public void containsNullTest() {
  57. p.contains(null);
  58. }
  59.  
  60. @Test
  61. public void containsTest() {
  62. p.insert(new Point2D(0,0));
  63. assertTrue(p.contains(new Point2D(0,0)));
  64. }
  65.  
  66. @Test
  67. public void containsFalseTest() {
  68. p.insert(new Point2D(0,0));
  69. assertFalse(p.contains(new Point2D(0,1)));
  70. }
  71.  
  72. @Test
  73. public void containsComplexTest() {
  74. p.insert(new Point2D(0,0));
  75. p.insert(new Point2D(0,1));
  76. p.insert(new Point2D(1,0));
  77. p.insert(new Point2D(.1,.9));
  78. p.insert(new Point2D(.5,.5));
  79. assertTrue(p.contains(new Point2D(0,0)));
  80. assertTrue(p.contains(new Point2D(0,1)));
  81. assertTrue(p.contains(new Point2D(1,0)));
  82. assertTrue(p.contains(new Point2D(.1,.9)));
  83. assertTrue(p.contains(new Point2D(.5,.5)));
  84. assertFalse(p.contains(new Point2D(.6,.6)));
  85. }
  86.  
  87. @Test(expected=IllegalArgumentException.class)
  88. public void rangeNullTest() {
  89. p.range(null);
  90. }
  91.  
  92. @Test
  93. public void emptyRangeTest() {
  94. p.insert(new Point2D(.1,.1));
  95. p.insert(new Point2D(.1,.9));
  96. p.insert(new Point2D(.9,.1));
  97. assertFalse(p.range(new RectHV(.2,.2,1,1)).iterator().hasNext());
  98. }
  99.  
  100. @Test
  101. public void nonEmptyRangeTest() {
  102. p.insert(new Point2D(.1,.1));
  103. p.insert(new Point2D(.1,.9));
  104. p.insert(new Point2D(.9,.1));
  105. p.insert(new Point2D(.3,.3));
  106. p.insert(new Point2D(.6,.4));
  107. p.insert(new Point2D(.5,.4));
  108.  
  109. int i = 0;
  110. RectHV rect = new RectHV(.3,.3,.8,.8);
  111. for (Point2D point : p.range(rect)) {
  112. assertTrue(rect.contains(point));
  113. i++;
  114. }
  115. assertTrue(i == 3);
  116. }
  117.  
  118.  
  119. @Test(expected=IllegalArgumentException.class)
  120. public void nearestNullTest() {
  121. p.nearest(null);
  122. }
  123.  
  124. @Test
  125. public void nearestEmptyTest() {
  126. assertTrue(p.nearest(new Point2D(0,0)) == null);
  127. }
  128.  
  129. @Test
  130. public void nearestNonEmptyTest() {
  131. p.insert(new Point2D(.1,.1));
  132. p.insert(new Point2D(.1,.9));
  133. p.insert(new Point2D(.9,.1));
  134. p.insert(new Point2D(.3,.3));
  135. p.insert(new Point2D(.6,.4));
  136. p.insert(new Point2D(.5,.4));
  137.  
  138. assertTrue(p.nearest(new Point2D(.2, 0)).equals(new Point2D(.1, .1)));
  139. assertTrue(p.nearest(new Point2D(.4, .7)).equals(new Point2D(.5, .4)));
  140. assertTrue(p.nearest(new Point2D(.9, .2)).equals(new Point2D(.9, .1)));
  141. assertTrue(p.nearest(new Point2D(.5, .5)).equals(new Point2D(.5, .4)));
  142. }
  143.  
  144. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement