source: branches/autoquest-core-tasktrees-alignment-test/src/test/java/de/ugoe/cs/autoquest/tasktrees/alignment/algorithms/NumberSequenceTest.java @ 1649

Last change on this file since 1649 was 1649, checked in by rkrimmel, 10 years ago

Adding tests to some classes.

File size: 3.1 KB
Line 
1package de.ugoe.cs.autoquest.tasktrees.alignment.algorithms;
2
3import static org.junit.Assert.*;
4
5import org.junit.Test;
6
7public class NumberSequenceTest {
8
9        @Test
10        public void testContainsPattern() {
11                int[] seq = new int[10];
12                for (int i=0; i<10; i++) {
13                        seq[i] = i;
14                }
15               
16                int[] pat1 = new int[]{2,3,4};
17                int[] pat2 = new int[]{2,3,4};
18               
19                int[] pat3 = new int[]{5,-1,7};
20                int[] pat4 = new int[]{1,2,3};
21               
22                int[] pat5 = new int[]{-1,-1,-1};
23               
24                int[] pat6 = new int[]{10,11,12};
25               
26                int[] pat7 = new int[]{8,9,10};
27                int[] pat8 = new int[]{7,6,5};
28               
29                int[] pat9 = new int[]{0};
30                int[] pat10 = new int[]{1};
31               
32               
33                NumberSequence ns = new NumberSequence(10);
34                ns.setSequence(seq);
35               
36                NumberSequence firstpattern = new NumberSequence(3);
37                NumberSequence secondpattern = new NumberSequence(3);
38                firstpattern.setSequence(pat1);
39                secondpattern.setSequence(pat2);
40               
41                Match pattern = new Match();
42                pattern.setFirstSequence(firstpattern);
43                pattern.setSecondSequence(secondpattern);               
44                assertEquals(Integer.valueOf(2),ns.containsPattern(pattern).get(0));
45                assertEquals(1,ns.containsPattern(pattern).size());
46               
47                firstpattern.setSequence(pat3);
48                secondpattern.setSequence(pat4);
49               
50                assertEquals(Integer.valueOf(1),ns.containsPattern(pattern).get(0));
51                assertEquals(Integer.valueOf(5),ns.containsPattern(pattern).get(1));
52                assertEquals(2,ns.containsPattern(pattern).size());
53       
54                firstpattern.setSequence(pat5);
55                secondpattern.setSequence(pat5);
56                assertEquals(0,ns.containsPattern(pattern).size());
57               
58                firstpattern.setSequence(pat6);
59                secondpattern.setSequence(pat6);
60                assertEquals(0,ns.containsPattern(pattern).size());
61               
62                firstpattern.setSequence(pat7);
63                secondpattern.setSequence(pat8);
64                assertEquals(0,ns.containsPattern(pattern).size());
65               
66                firstpattern.setSequence(pat9);
67                secondpattern.setSequence(pat10);
68                assertEquals(Integer.valueOf(0),ns.containsPattern(pattern).get(0));
69                assertEquals(Integer.valueOf(1),ns.containsPattern(pattern).get(1));
70                assertEquals(2,ns.containsPattern(pattern).size());
71       
72        }
73
74        @Test
75        public void testEventCount() {
76                int[] seq = new int[10];
77                for (int i=0; i<10; i++) {
78                        seq[i] = i;
79                }
80                NumberSequence ns = new NumberSequence(10);
81                ns.setSequence(seq);
82               
83                int[] pat2 = new int[]{-1,-1,-1};
84                int[] pat3 = new int[]{0,1,2,3,0,2};
85               
86                assertEquals(1,ns.eventCount(5));
87               
88                ns.setSequence(pat2);
89                assertEquals(3,ns.eventCount(-1));
90               
91                ns.setSequence(pat3);
92                assertEquals(2,ns.eventCount(0));
93                assertEquals(2,ns.eventCount(2));
94                assertEquals(0,ns.eventCount(5));
95        }
96
97        @Test
98        public void testEqualsNumberSequence() {
99                int[] seq1 = new int[10];
100                for (int i=0; i<10; i++) {
101                        seq1[i] = i;
102                }
103                NumberSequence ns1 = new NumberSequence(10);
104                ns1.setSequence(seq1);
105               
106                int[] seq2 = new int[10];
107                for (int i=0; i<10; i++) {
108                        seq2[i] = i;
109                }
110                NumberSequence ns2 = new NumberSequence(10);
111                ns2.setSequence(seq2);
112               
113                int[] seq3 = new int[10];
114                for (int i=0; i<10; i++) {
115                        seq3[i] = 2*i;
116                }
117                NumberSequence ns3 = new NumberSequence(10);
118                ns3.setSequence(seq3);
119               
120                assertTrue(ns1.equals(ns2));
121                assertFalse(ns1.equals(ns3));
122                assertFalse(ns2.equals(ns3));
123               
124        }
125
126}
Note: See TracBrowser for help on using the repository browser.