Guest User

Untitled

a guest
Feb 24th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.19 KB | None | 0 0
  1. package MyGeometryLib;
  2.  
  3. import org.junit.jupiter.api.Test;
  4.  
  5. import java.util.Random;
  6.  
  7. import static org.junit.jupiter.api.Assertions.*;
  8.  
  9. class SegmentTest {
  10. private final Random random = new Random();
  11. private final double DELTA = 1e-15;
  12.  
  13. @Test
  14. void length() {
  15. for (int i = 0; i < 100; i++) {
  16. double ran = random.nextDouble();
  17.  
  18. assertEquals(0,
  19. new Segment(new Vector2D(ran, ran), new Vector2D(ran, ran)).length(), DELTA);
  20. assertEquals(0,
  21. new Segment(new Vector3D(ran, ran, ran), new Vector3D(ran, ran, ran)).length(), DELTA);
  22. }
  23.  
  24. assertEquals(Math.sqrt(309),
  25. new Segment(new Vector3D(9, -1, -8), new Vector3D(7, 3, 9)).length(), DELTA);
  26. assertEquals(Math.sqrt(7050.343),
  27. new Segment(new Vector2D(22.65, 7.19), new Vector2D(-11.27, 84)).length(), 0.00001);
  28. }
  29.  
  30. @Test
  31. void distanceTo() {
  32. for (int i = 0; i < 100; i++) {
  33. double ran = random.nextDouble();
  34. double firstRan = random.nextDouble();
  35. double secondRan = random.nextDouble();
  36. double thirdRan = random.nextDouble();
  37.  
  38. assertEquals(Math.sqrt(firstRan * firstRan + secondRan * secondRan),
  39. new Segment(new Vector2D(ran, ran), new Vector2D(ran, ran)).distanceTo(new Vector2D(firstRan, secondRan)), DELTA);
  40. assertEquals(Math.sqrt(firstRan * firstRan + secondRan * secondRan + thirdRan*thirdRan),
  41. new Segment(new Vector3D(ran, ran, ran), new Vector3D(ran, ran, ran)).distanceTo(new Vector3D(firstRan, secondRan, thirdRan)), DELTA);
  42. }
  43.  
  44. assertEquals(0.0,
  45. new Segment(new Vector2D(0, 0), new Vector2D(0, 0)).distanceTo(new Vector2D(0, 0)), DELTA);
  46. assertEquals(0.0,
  47. new Segment(new Vector3D(0, 0, 0), new Vector3D(0, 0, 0)).distanceTo(new Vector3D(0, 0, 0)), DELTA);
  48.  
  49. assertEquals(4.8,new Segment(new Vector2D(6, 0), new Vector2D(0, 8)).distanceTo(new Vector2D(0 , 0)), DELTA);
  50. assertEquals(5,
  51. new Segment(new Vector3D(1, -1, 3), new Vector3D(1, 3, 0)).distanceTo(new Vector3D(5, -6, 3)), 0.000000001);
  52. }
  53. }
Add Comment
Please, Sign In to add comment