author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 15 Aug 2016 17:30:36 +0100 | |
changeset 44 | 2bf743f565e6 |
parent 41 | 41896fd2e6bf |
permissions | -rw-r--r-- |
39
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
1 |
package jv.dragonfly.c1.tests; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
2 |
|
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
3 |
//import java.util.*; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
4 |
|
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
5 |
import static org.junit.Assert.*; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
6 |
import org.junit.Test; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
7 |
import stx.libjava.annotation.Package; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
8 |
|
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
9 |
@Package("jv:dragonfly/c1/tests") |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
10 |
public class C1CompilerJavaTests { |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
11 |
public int m01a() { |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
12 |
return 15; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
13 |
} |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
14 |
|
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
15 |
public int m02a(int a) { |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
16 |
return a; |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
17 |
} |
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
18 |
|
41
41896fd2e6bf
Added tests for integer arithmetics
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
19 |
public int m03a(int a, int b) { |
41896fd2e6bf
Added tests for integer arithmetics
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
20 |
return a + b; |
41896fd2e6bf
Added tests for integer arithmetics
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
21 |
} |
41896fd2e6bf
Added tests for integer arithmetics
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
39
diff
changeset
|
22 |
|
44
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
23 |
public int m04a(int a) { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
24 |
if (a < 0) { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
25 |
return -1; |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
26 |
} else { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
27 |
if (a > 0) { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
28 |
return 1; |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
29 |
} else { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
30 |
return 0; |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
31 |
} |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
32 |
} |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
33 |
} |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
34 |
|
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
35 |
public int m04b(int a) { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
36 |
int r = 1; |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
37 |
do { |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
38 |
r = r * a--; |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
39 |
} while (a > 0); |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
40 |
return r; |
2bf743f565e6
C1: Added support for branching
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
41
diff
changeset
|
41 |
} |
39
e6fd7b4f1bc9
Moved tests to `jv:dragondfly/c1/tests` subpackage.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
42 |
} |