View Javadoc
1   package org.woehlke.computer.kurzweil.tabs.mandelbrot2julia;
2   
3   
4   import org.junit.jupiter.api.Test;
5   import org.woehlke.computer.kurzweil.commons.model.fractal.ComplexNumber;
6   
7   import java.util.logging.Logger;
8   
9   import static org.junit.jupiter.api.Assertions.*;
10  
11  /**
12   * (C) 2006 - 2015 Thomas Woehlke.
13   * https://thomas-woehlke.blogspot.com/2016/01/mandelbrot-set-drawn-by-turing-machine.html
14   * @author Thomas Woehlke
15   * Created by tw on 24.08.15.
16   */
17  public class ComplexNumberTest {
18  
19      public static Logger log = Logger.getLogger(ComplexNumberTest.class.getName());
20  
21      @Test
22      public void computeMandelbrotTest1(){
23          log.info("computeMandelbrotTest1 start");
24          ComplexNumber complexNumber1 = new ComplexNumber();
25          int iterations = complexNumber1.computeMandelbrotSet();
26          log.info("computeMandelbrotTest1 iterations : "+ iterations);
27          assertTrue(complexNumber1.isInMandelbrotSet());
28          assertNotEquals(ComplexNumber.MAX_ITERATIONS, iterations);
29          assertTrue(0 == iterations);
30          log.info("computeMandelbrotTest1 done");
31      }
32  
33      @Test
34      public void computeMandelbrotTest2(){
35          log.info("computeMandelbrotTest2 start");
36          ComplexNumber complexNumber2 = new ComplexNumber(1.0d,1.2d);
37          int iterations = complexNumber2.computeMandelbrotSet();
38          log.info("computeMandelbrotTest2 iterations : "+ iterations);
39          assertFalse(complexNumber2.isInMandelbrotSet());
40          assertNotEquals(iterations, ComplexNumber.MAX_ITERATIONS);
41          assertTrue(iterations < ComplexNumber.MAX_ITERATIONS);
42          assertTrue(2 == iterations);
43          log.info("computeMandelbrotTest2 done");
44      }
45  
46      @Test
47      public void computeJuliaTest1(){
48          log.info("computeJuliaTest1 start");
49          ComplexNumber z = new ComplexNumber(0.1d,0.2d);
50          ComplexNumber c = new ComplexNumber(0.2d,0.1d);
51          int iterations = z.computeJuliaSet(c);
52          log.info("computeJuliaTest1 iterations : "+ iterations);
53          boolean isInJuliaSet = z.isInJuliaSet();
54          assertTrue(isInJuliaSet);
55          assertNotEquals(ComplexNumber.MAX_ITERATIONS, iterations);
56          assertTrue(iterations < ComplexNumber.MAX_ITERATIONS);
57          assertTrue(0 == iterations);
58          log.info("computeJuliaTest1 done");
59      }
60  
61      @Test
62      public void computeJuliaTest2(){
63          log.info("computeJuliaTest2 start");
64          ComplexNumber z = new ComplexNumber(0.1d,0.2d);
65          ComplexNumber c = new ComplexNumber(1.0d,1.1d);
66          int iterations = z.computeJuliaSet(c);
67          log.info("computeJuliaTest2 iterations :"+ iterations);
68          boolean isInJuliaSet = z.isInJuliaSet();
69          assertFalse(isInJuliaSet);
70          assertNotEquals(ComplexNumber.MAX_ITERATIONS, iterations);
71          assertTrue(iterations < ComplexNumber.MAX_ITERATIONS);
72          assertTrue(2 == iterations);
73          log.info("computeJuliaTest2 done");
74      }
75  }