Binary.java

1
// Copyright © 2004-2006 University of Helsinki, Department of Computer Science
2
// Copyright © 2012 various contributors
3
// This software is released under GNU Lesser General Public License 2.1.
4
// The license text is at http://www.gnu.org/licenses/lgpl-2.1.html
5
6
package fi.helsinki.cs.titokone;
7
8
import java.text.ParseException;
9
import java.util.Vector;
10
11
/**
12
 * This class represents the contents of a binary file. It can
13
 * interpret an Application instance of itself with the help of the
14
 * BinaryInterpreter class, as well as transforming an Application into
15
 * a string in the binary file format.
16
 */
17
public class Binary {
18
    /**
19
     * This field stores the application this binary represents, or
20
     * null if it has not yet been resolved.
21
     */
22
    private Application application;
23
    /**
24
     * This field stores the binary contents of the application, or
25
     * an empty string if the contents have not yet been resolved
26
     * (ie. the Application constructor has been used and toString()
27
     * has not been called).
28
     */
29
    private String contents;
30
31
    /**
32
     * This constructor sets up a binary instance.
33
     *
34
     * @param contents A linebreak-delimited string containing the
35
     *                 contents of a binary file.
36
     * @throws ParseException If the string does not represent a
37
     *                        syntactically correct binary.
38
     */
39
    public Binary(String contents) throws ParseException {
40 1
        BinaryInterpreter bini = new BinaryInterpreter();
41 1
        this.contents = contents;
42
43
        //split contents into a b91 array where deliminiter is line separator
44
45
        //String[] b91=contents.split(System.getProperty("line.separator",
46
        //					       "\n"));
47
48
        //This split trusts that FileHandler returns strings splitted with
49
        //\n.
50 1
        String[] b91 = contents.split("\n");
51
52
        //Trim all spaces and whitespaces from aray
53 5
        for (int i = 0; i < b91.length; i++) {
54 1
            b91[i] = b91[i].trim();
55
        }
56
57
        /* From now on, i is used to tell which line in .b91 file method is
58
            parsing.*/
59 2
        int i = 0;
60
61
        /* Check if reserved line ___b91___ is found.*/
62 2
        if (!b91[i].equalsIgnoreCase("___b91___")) {
63 6
            throw new ParseException(new Message("___b91___ is " +
64
                    "missing.").toString(), i + 1);
65
        }
66 1
        i++;
67
        /* Check if reserved line ___code___ is found.*/
68 2
        if (!b91[i].equalsIgnoreCase("___code___")) {
69 6
            throw new ParseException(new Message("___code___ is " +
70
                    "missing.").toString(), i + 1);
71
        }
72 1
        i++;
73
74
        /* Calculating code area length.*/
75 1
        String[] codeArea = b91[i].split("\\s");
76
        Integer x, y;
77
        int lastCodeLine;
78
        /* Try to get integers from values and check if they are valid*/
79
        try {
80 3
            x = new Integer(codeArea[0]);
81 3
            y = new Integer(codeArea[1]);
82
        } catch (Exception e) {
83 13
            throw new ParseException(new Message("Invalid code area value " +
84
                    "on line: {0}",
85
                    "" + (i + 1)).toString(), i + 1);
86
        }
87
88 1
        lastCodeLine = y.intValue();
89
90 9
        if (x.intValue() != 0 || x.intValue() > y.intValue() + 1) {
91 13
            throw new ParseException(new Message("Invalid code area " +
92
                    "length on line: {0}",
93
                    "" + (i + 1)).toString(), i + 1);
94
        }
95 4
        int areaLength = y.intValue() + 1;
96
97 1
        i++;
98
99
        //if(y.intValue()!=-1)
100 1
        if (areaLength != 0) {
101 2
            while (!b91[i].startsWith("_")) {
102
                Integer j;
103
                try {
104 1
                    j = new Integer(b91[i]);
105
                } catch (Exception e) {
106 13
                    throw new ParseException(new Message("Invalid command on " +
107
                            "line: {0}",
108
                            "" + (i + 1)).toString(),
109
                            i + 1);
110
                }
111
112 1
                int k = j.intValue();
113 1
                String s = bini.binaryToString(k);
114
115 2
                if (s.equals("")) {
116 13
                    throw new ParseException(new Message("Invalid command on" +
117
                            " line: {0}",
118
                            "" + (i + 1)).toString(),
119
                            i + 1);
120
                }
121 1
                i++;
122
            }
123
124 4
            if (i - 3 != areaLength) {
125 6
                throw new ParseException(new Message("Invalid number of " +
126
                        "code lines.").toString(),
127
                        i + 1);
128
            }
129
        }
130
        /* Check if ___data___ is missing. */
131 2
        if (!b91[i].equalsIgnoreCase("___data___")) {
132 6
            throw new ParseException(new Message("___data___ is " +
133
                    "missing.").toString(), i + 1);
134
        }
135 1
        i++;
136
137 1
        String[] dataArea = b91[i].split("\\s");
138
        /* check if data values are integers. */
139
        try {
140 3
            x = new Integer(dataArea[0]);
141 3
            y = new Integer(dataArea[1]);
142
        } catch (Exception e) {
143 13
            throw new ParseException(new Message("Invalid data area " +
144
                    "value on line: {0}",
145
                    "" + (i + 1)).toString(), i + 1);
146
        }
147
148 5
        if (x.intValue() != lastCodeLine + 1) {
149 13
            throw new ParseException(new Message("Invalid data area " +
150
                    "value on line: {0}",
151
                    "" + (i + 1)).toString(), i + 1);
152
        }
153 7
        if (x.intValue() > y.intValue() + 1)
154
155
        {
156 13
            throw new ParseException(new Message("Invalid data area " +
157
                    "length on line: {0}",
158
                    "" + (i + 1)).toString(), i + 1);
159
        }
160
161 6
        areaLength = y.intValue() - x.intValue() + 1;
162
163 1
        i++;
164 1
        areaLength += i;
165
166 3
        for (int j = i; j < areaLength; j++) {
167
            try {
168 1
                Integer value = new Integer(b91[j]);
169
            } catch (Exception e) {
170 13
                throw new ParseException(new Message("Invalid data on line: " +
171
                        "{0}",
172
                        "" + (i + 1)).toString(), i + 1);
173
            }
174 1
            i++;
175
        }
176
177
        /* Check if ___symboltable___ is missing */
178 2
        if (!b91[i].equalsIgnoreCase("___symboltable___")) {
179 6
            throw new ParseException(new Message("___symboltable___ is " +
180
                    "missing.").toString(), i + 1);
181
        }
182 1
        i++;
183 2
        while (!b91[i].startsWith("_")) {
184 1
            String[] s = b91[i].split("\\s");
185 3
            if (s.length != 2) {
186 13
                throw new ParseException(new Message("Invalid symbol on " +
187
                        "line: {0}",
188
                        "" + (i + 1)).toString(),
189
                        i + 1);
190
            }
191
192 8
            if (!s[0].equalsIgnoreCase("STDIN") &&
193
                    !s[0].equalsIgnoreCase("STDOUT")) {
194
195
                try {
196 3
                    Integer value = new Integer(s[1]);
197
                } catch (Exception e) {
198 13
                    throw new ParseException(new Message("Invalid symbol " +
199
                            "value on line: {0}"
200
                            , "" + (i + 1)).toString(),
201
                            i + 1);
202
                }
203
            }
204 1
            i++;
205
        }
206
        /* Check if ___end is missing. */
207 2
        if (!b91[i].equalsIgnoreCase("___end___")) {
208 6
            throw new ParseException(new Message("___end___ is " +
209
                    "missing.").toString(),
210
                    i + 1);
211
        }
212
213
        int EOF = i; //line containing ___end___, following lines should
214 1
        i++;       //contain only whitespaces
215
216 2
        while (i < b91.length) {
217
218 2
            if (!b91[i].equals("")) {
219 6
                throw new ParseException(new Message("Lines after " +
220
                        "___end___").toString(), i + 1);
221
            }
222 1
            i++;
223
        }
224
225 1
        this.contents = "";
226
227
        //Assembling parsed b91 array to string
228 5
        for (int l = 0; l <= EOF; l++) {
229 5
            this.contents = this.contents + b91[l];
230
            //this.contents+=System.getProperty("line.separator","\n");
231 5
            this.contents += "\n";
232
        }
233
234
235
    }
236
237
    /**
238
     * This constructor sets up a binary instance which has already
239
     * been interpreted into an application. It delays interpreting
240
     * the binary to string form until toString() is called.
241
     *
242
     * @param application The application to form a binary of.
243
     */
244
245
    public Binary(Application application) {
246 1
        this.application = application;
247
    }
248
249
    /**
250
     * This method transforms the binary into an application file.
251
     * It instantiates a BinaryInterpreter to help with the task and
252
     * stores the result internally to avoid needing to redo the
253
     * interpretation. If the class already knows what the application
254
     * class corresponding to the binary is, it will just return that.
255
     *
256
     * @return An application instance corresponding to the binary.
257
     * @throws ParseException If the binary contents are not
258
     *                        syntatically correct.
259
     */
260
261
    public Application toApplication() throws ParseException {
262
263 1
        BinaryInterpreter bini = new BinaryInterpreter();
264
        Application app;
265
        Integer command;
266
        MemoryLine line;
267 1
        SymbolTable symbolTable = new SymbolTable();
268
269 1
        Vector<MemoryLine> code = new Vector<MemoryLine>();
270 1
        Vector<MemoryLine> data = new Vector<MemoryLine>();
271
        //String[] b91=contents.split(System.getProperty("line.separator",
272
        //"\n"));
273 1
        String[] b91 = contents.split("\n");
274 5
        for (int i = 0; i < b91.length; i++) {
275 1
            b91[i].trim();
276
        }
277 2
        int i = 0;
278 2
        while (b91[i].startsWith("_")) {
279 1
            i++;
280
        }
281 1
        i++;
282
283 2
        while (!b91[i].startsWith("_")) {
284 1
            command = new Integer(b91[i]);
285 2
            String symbolic = bini.binaryToString(command.intValue());
286 2
            line = new MemoryLine(command.intValue(), symbolic);
287 1
            code.add(line);
288 1
            i++;
289
        }
290
291 1
        i++;//Pass ___data___
292
293 1
        i++;//Pass data area pointers
294
295
296 2
        while (!b91[i].startsWith("_")) {
297 1
            command = new Integer(b91[i]);
298 2
            String symbolic = bini.binaryToString(command.intValue());
299 2
            line = new MemoryLine(command.intValue(), symbolic);
300 1
            data.add(line);
301 1
            i++;
302
        }
303
304
305 1
        i++; //pass __symboltable___
306 2
        while (!b91[i].startsWith("_")) {
307
308 1
            String[] symbol = b91[i].split("\\s");
309
310
            /* If symbol is STDIN or STDOUT, add it to definitions */
311 8
            if (symbol[0].equalsIgnoreCase("STDOUT")
312
                    || symbol[0].equalsIgnoreCase("STDIN")) {
313 5
                symbolTable.addDefinition(symbol[0], symbol[1]);
314
            } else {
315 3
                Integer j = new Integer(symbol[1]);
316 4
                symbolTable.addSymbol(symbol[0], j.intValue());
317
            }
318 1
            i++;
319
        }
320
321 1
        MemoryLine[] codeLines = new MemoryLine[code.size()];
322 5
        for (int j = 0; j < codeLines.length; j++) {
323 1
            codeLines[j] = (MemoryLine) code.get(j);
324
        }
325
326 1
        MemoryLine[] dataLines = new MemoryLine[data.size()];
327 5
        for (int j = 0; j < dataLines.length; j++) {
328 1
            dataLines[j] = (MemoryLine) data.get(j);
329
        }
330 1
        app = new Application(codeLines, dataLines, symbolTable);
331 1
        return app;
332
    }
333
334
    /**
335
     * This method determines (if it is not done already), stores and
336
     * returns the String representation in .b91 format of this
337
     * binary.  The linebreaks used vary, as one of the constructors
338
     * accepts a premade string; if the Application constructor has
339
     * been used, the linebreak will be
340
     * System.getProperty(line.separator, "\n"). An example program in .b91
341
     * format might look like this (comments in parentheses are not
342
     * a part of the file format):<br>
343
     * <pre>
344
     * ___b91___
345
     * ___code___
346
     * 0 9          (numbers of the first and the last line of code,
347
     * 52428801      the latter also being the initial value of FP)
348
     * 18874378
349
     * 572522503
350
     * 36175883
351
     * 287834122
352
     * 18874379
353
     * 538968064
354
     * 36175883
355
     * 69206016
356
     * 1891631115
357
     * ___data___
358
     * 10 11         (numbers the first and the last line of the data
359
     * 0              area, the latter also being the initial value of SP;
360
     * 0              then follow the contents of the data area in order)
361
     * ___symboltable___
362
     * luku 10        (only local symbols are included, eg. HALT is
363
     * summa 11        considered built-in)
364
     * ___end___
365
     * </pre>
366
     *
367
     * @return The String representation of this binary.
368
     */
369
    public String toString() {
370
371 1
        if (contents != null) {
372 1
            String[] temp = contents.split("\n");
373
            String content = "";
374 5
            for (int i = 0; i < temp.length; i++) {
375 6
                content += temp[i] + System.getProperty("line.separator", "\n");
376
            }
377 1
            return content;
378
        }
379
380 1
        MemoryLine[] code = application.getCode();
381 1
        MemoryLine[] data = application.getInitialData();
382 1
        SymbolTable symbol = application.getSymbolTable();
383 1
        String[] symNames = symbol.getAllSymbols();
384 1
        String[] definitions = symbol.getAllDefinitions();
385
        int length = code.length;
386
387
        String s = "___b91___";
388 5
        s += System.getProperty("line.separator", "\n");
389
390 4
        s += "___code___";
391 5
        s += System.getProperty("line.separator", "\n");
392
393
394 8
        s += +0 + " " + (length - 1);
395
396 5
        s += System.getProperty("line.separator", "\n");
397
398 5
        for (int i = 0; i < length; i++) {
399 7
            s += code[i].getBinary() + System.getProperty("line.separator", "\n");
400
        }
401
402 1
        length = code.length + data.length;
403
404 4
        s += "___data___";
405 5
        s += System.getProperty("line.separator", "\n");
406
407 2
        if (data.length > 0) {
408 10
            s += "" + code.length + " " + (length - 1);
409
        } else {
410 10
            s += "" + code.length + " " + (code.length - 1);
411
        }
412 5
        s += System.getProperty("line.separator", "\n");
413
414 1
        if (data != null) {
415 5
            for (int i = 0; i < data.length; i++) {
416 6
                s += "" + data[i].getBinary();
417 5
                s += System.getProperty("line.separator", "\n");
418
            }
419
        }
420 4
        s += "___symboltable___";
421 5
        s += System.getProperty("line.separator", "\n");
422
423 1
        if (symNames != null) {
424 5
            for (int i = 0; i < symNames.length; i++) {
425 8
                s += "" + symNames[i] + " " + symbol.getSymbol(symNames[i]);
426 5
                s += System.getProperty("line.separator", "\n");
427
            }
428
        }
429 1
        if (definitions != null) {
430 5
            for (int i = 0; i < definitions.length; i++) {
431 7
                s += definitions[i] + " " + symbol.getDefinition(definitions[i]);
432 5
                s += System.getProperty("line.separator", "\n");
433
            }
434
        }
435
436 4
        s += "___end___";
437 5
        s += System.getProperty("line.separator", "\n");
438 1
        return s;
439
440
441
    }
442
}

Mutations

40

removed call to fi/helsinki/cs/titokone/BinaryInterpreter::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

41

Removed assignment to member variable contents : SURVIVED

50

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

53

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

54

removed call to java/lang/String::trim : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

59

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

62

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

63

Substituted 1 with 0 : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

66

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

68

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

69

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : SURVIVED

Replaced integer addition with subtraction : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

72

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

75

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

80

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

81

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

83

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

88

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

90

removed call to java/lang/Integer::intValue : SURVIVED

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : SURVIVED

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : SURVIVED

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

91

Replaced integer addition with subtraction : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::toString : NO_COVERAGE

removed call to java/lang/StringBuilder::toString : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to java/lang/StringBuilder::<init> : NO_COVERAGE

removed call to java/text/ParseException::<init> : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::<init> : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

95

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

97

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

100

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

101

removed call to java/lang/String::startsWith : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

104

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

106

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : SURVIVED

112

removed call to java/lang/Integer::intValue : SURVIVED

113

removed call to fi/helsinki/cs/titokone/BinaryInterpreter::binaryToString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

115

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equals : SURVIVED

116

Substituted 1 with 0 : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

removed call to java/lang/StringBuilder::toString : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to java/text/ParseException::<init> : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::<init> : NO_COVERAGE

removed call to java/lang/StringBuilder::<init> : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::toString : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

121

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

124

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 3 with 4 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer subtraction with addition : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 3 with 4 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

125

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

Substituted 1 with 0 : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

131

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

132

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

Substituted 1 with 0 : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

135

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

137

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

140

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

141

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

143

removed call to java/lang/StringBuilder::<init> : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

removed call to java/text/ParseException::<init> : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::<init> : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

removed call to java/lang/StringBuilder::toString : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::toString : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

148

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

149

removed call to java/lang/StringBuilder::toString : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::<init> : NO_COVERAGE

removed call to java/lang/StringBuilder::<init> : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

Replaced integer addition with subtraction : NO_COVERAGE

removed call to java/text/ParseException::<init> : NO_COVERAGE

removed call to fi/helsinki/cs/titokone/Message::toString : NO_COVERAGE

Substituted 1 with 0 : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

removed call to java/lang/StringBuilder::append : NO_COVERAGE

153

Substituted 1 with 0 : SURVIVED

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : SURVIVED

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

156

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Replaced integer addition with subtraction : SURVIVED

161

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer subtraction with addition : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

163

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

164

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

166

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

168

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

170

Substituted 1 with 0 : SURVIVED

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

174

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

178

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

179

Substituted 1 with 0 : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

182

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

183

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::startsWith : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

184

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

185

Substituted 2 with 3 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 2 with 3 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

186

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

192

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

196

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::<init> : SURVIVED

198

Substituted 1 with 0 : SURVIVED

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

204

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

207

negated conditional : MEMORY_ERROR

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

208

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

Replaced integer addition with subtraction : SURVIVED

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : SURVIVED

214

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

216

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

218

removed call to java/lang/String::equals : SURVIVED

negated conditional : SURVIVED

219

Substituted 1 with 0 : SURVIVED

Substituted 1 with 0 : SURVIVED

removed call to java/text/ParseException::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer addition with subtraction : SURVIVED

removed call to fi/helsinki/cs/titokone/Message::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/Message::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

222

Changed increment from 1 to -1 : SURVIVED

225

Removed assignment to member variable contents : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

228

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

229

Removed assignment to member variable contents : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

231

Removed assignment to member variable contents : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

246

Removed assignment to member variable application : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

263

removed call to fi/helsinki/cs/titokone/BinaryInterpreter::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

267

removed call to fi/helsinki/cs/titokone/SymbolTable::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

269

removed call to java/util/Vector::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

270

removed call to java/util/Vector::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

273

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

274

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : SURVIVED

Substituted 0 with 1 : SURVIVED

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : SURVIVED

275

removed call to java/lang/String::trim : SURVIVED

277

Substituted 0 with 1 : SURVIVED

Substituted 0 with 1 : SURVIVED

278

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::startsWith : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

279

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

281

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

283

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::startsWith : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

284

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

285

removed call to fi/helsinki/cs/titokone/BinaryInterpreter::binaryToString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

286

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/MemoryLine::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

287

removed call to java/util/Vector::add : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

288

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

291

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

293

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

296

removed call to java/lang/String::startsWith : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

297

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

298

removed call to java/lang/Integer::intValue : SURVIVED

removed call to fi/helsinki/cs/titokone/BinaryInterpreter::binaryToString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

299

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/MemoryLine::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

300

removed call to java/util/Vector::add : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

301

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

305

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

306

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::startsWith : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

308

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

311

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equalsIgnoreCase : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : SURVIVED

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : SURVIVED

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/String::equalsIgnoreCase : SURVIVED

313

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/SymbolTable::addDefinition : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

315

removed call to java/lang/Integer::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

316

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/SymbolTable::addSymbol : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/Integer::intValue : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

318

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

321

removed call to java/util/Vector::size : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

322

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

323

removed call to java/util/Vector::get : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

326

removed call to java/util/Vector::size : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

327

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinaryToApplication(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

328

removed call to java/util/Vector::get : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

330

removed call to fi/helsinki/cs/titokone/Application::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

331

mutated return of Object value for fi/helsinki/cs/titokone/Binary::toApplication to ( if (x != null) null else throw new RuntimeException ) : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

371

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

372

removed call to java/lang/String::split : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

374

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

375

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

377

mutated return of Object value for fi/helsinki/cs/titokone/Binary::toString to ( if (x != null) null else throw new RuntimeException ) : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testBinary(fi.helsinki.cs.titokone.BinaryTest)

380

removed call to fi/helsinki/cs/titokone/Application::getCode : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

381

removed call to fi/helsinki/cs/titokone/Application::getInitialData : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

382

removed call to fi/helsinki/cs/titokone/Application::getSymbolTable : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

383

removed call to fi/helsinki/cs/titokone/SymbolTable::getAllSymbols : SURVIVED

384

removed call to fi/helsinki/cs/titokone/SymbolTable::getAllDefinitions : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

388

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

390

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

391

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

394

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer subtraction with addition : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

396

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

398

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

399

removed call to fi/helsinki/cs/titokone/MemoryLine::getBinary : SURVIVED

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

402

Replaced integer addition with subtraction : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

404

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

405

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

407

changed conditional boundary : SURVIVED

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

408

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Replaced integer subtraction with addition : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

410

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

Substituted 1 with 0 : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

Replaced integer subtraction with addition : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.ControlTest.testGetBinary(fi.helsinki.cs.titokone.ControlTest)

412

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

414

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

415

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

416

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/MemoryLine::getBinary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

417

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

420

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

421

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

423

negated conditional : SURVIVED

424

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : SURVIVED

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : SURVIVED

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

425

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to fi/helsinki/cs/titokone/SymbolTable::getSymbol : SURVIVED

removed call to java/lang/StringBuilder::toString : SURVIVED

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

426

removed call to java/lang/StringBuilder::toString : SURVIVED

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

removed call to java/lang/System::getProperty : SURVIVED

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.ControlTest.testSaveBinaryGuessFilename(fi.helsinki.cs.titokone.ControlTest)

429

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

430

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

changed conditional boundary : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Substituted 0 with 1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Changed increment from 1 to -1 : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

negated conditional : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

431

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to fi/helsinki/cs/titokone/SymbolTable::getDefinition : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

432

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

436

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

437

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::toString : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::<init> : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/System::getProperty : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

removed call to java/lang/StringBuilder::append : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

438

mutated return of Object value for fi/helsinki/cs/titokone/Binary::toString to ( if (x != null) null else throw new RuntimeException ) : KILLED -> fi.helsinki.cs.titokone.BinaryTest.testToString(fi.helsinki.cs.titokone.BinaryTest)

Active mutators

Tests examined


Report generated by PIT 0.27