summaryrefslogtreecommitdiff
path: root/src/test/java/bjc/everge/EvergeTest.java
blob: 109992a9b1a9050002676d723ca3e67130db8212 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package bjc.everge;

import bjc.everge.TestUtils;

import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.PrintStream;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

import static bjc.everge.TestUtils.*;

import static org.junit.Assert.*;

import org.junit.Test;

/**
 * Unit tests for Everge front-end.
 *
 * @author Ben Culkin.
 */
public class EvergeTest {
	@Test
	public void testConstruct() {
		Everge evg = new Everge();

		assertTrue(true);
	}

	@Test
	public void testArgs() {
		Everge evg = new Everge();

		List<String> errs = new ArrayList<>();

		boolean stat = evg.processArgs(errs, "-v");
		if (!stat) {
			for (String err : errs) {
				System.err.println(err);
			}

			assertTrue(false);
		}
	}

	@Test
	public void testLoad() {
		ByteArrayOutputStream baos = new ByteArrayOutputStream();

		Everge evg = new Everge();
		evg.outStream = new PrintStream(baos);

		List<String> errs = new ArrayList<>();
		boolean stat = evg.processArgs(errs, "-vv", "--file", "data/test/evg-test1.rp",
				"data/test/evg-test1.inp");
		if (!stat) {
			System.err.println("[ERROR] Did not succesfully process args");
			for (String err : errs) {
				System.err.println(err);
			}

			assertTrue(false);
		}

		String outp = baos.toString().trim();
		assertEquals("b\nb", outp);
	}
}