SSJ API Documentation
Stochastic Simulation in Java
Loading...
Searching...
No Matches
CompareOutputs.java
1package tutorial;
2
3import org.junit.Test;
4import org.junit.runner.RunWith;
5import org.junit.runners.Parameterized;
6import org.junit.runners.Parameterized.*;
7import java.io.File;
8import java.io.IOException;
9import java.util.regex.Pattern;
10import java.util.Collection;
11import java.util.Arrays;
12
13@RunWith(Parameterized.class)
14public class CompareOutputs {
15
16 final static Pattern ignorePat = Pattern.compile(".*(\\bCPU time|\\bEfficiency ratio).*");
17
18 @Parameters
19 public static Collection<Object[]> data() {
20 return Arrays.asList(new Object[][] { { "tutorial", AsianGBM.class, null },
21 { "tutorial", AsianGBMRQMC.class, null }, { "tutorial", BankEv.class, null },
22 { "tutorial", CallCenter.class, new String[] { "tutorial/CallCenter.dat" } },
23 // { "tutorial", Collision.class, null },
24 { "tutorial", Inventory.class, null }, { "tutorial", InventoryCRN.class, null },
25 // { "tutorial", Nonuniform.class, null },
26 { "tutorial", PreyPred.class, null }, { "tutorial", QueueEv.class, null },
27 { "tutorial", QueueLindley.class, null }, { "tutorial", QueueObs.class, null },
28 // { "probdistmulti/norta", ExampleNortaInitDisc.class, null }
29 });
30 }
31
32 private String prefix;
33 private Class targetClass;
34 private String[] args;
35
36 // Constructor.
37 public CompareOutputs(String prefix, Class targetClass, String[] args) {
38 this.prefix = prefix;
39 this.targetClass = targetClass;
40 this.args = args;
41 }
42
43 @Test
44 public void runTutorialClass() throws RunClass.RunClassException, IOException {
45 String expected = RunClass.readFile(new File(prefix, targetClass.getSimpleName() + ".res"));
46 String actual = RunClass.run(targetClass, args);
47 RunClass.compareLineByLine(targetClass.getName(), expected, actual, ignorePat);
48 }
49}