BakeoutController-Basic  0.1
A Controller for the Omicron vacuum chamber
PressureProviderTestCase.java
1 package unit.kernel.models.variables.pressure_provider;
2 
4 import kernel.Kernel;
9 import org.jmock.Expectations;
10 import org.junit.Before;
12 
17 public abstract class PressureProviderTestCase extends VariablesTestCase {
18  protected final PressureGauge pressureGauge = context.mock(
19  PressureGauge.class
20  );
21 
22  protected final Kernel mockKernel = context.mock(
23  Kernel.class
24  );
25 
26  protected final TaskRunner mockTaskRunner = context.mock(
27  TaskRunner.class
28  );
29 
30  protected VariableProvider<Pressure> provider;
31 
32  protected abstract ExpectationsForPressureProvider getExpectations()
33  throws Exception;
34 
35  @Before
36  public void setUp() throws Exception {
37  setContext();
38  setProvider();
39  }
40 
41  private void setProvider(){
42  provider = new PressureProvider(pressureGauge, mockKernel);
43  }
44 
45  private void setContext() throws Exception {
46  context.checking(getExpectations());
47  }
48 
49  protected class ExpectationsForPressureProvider extends Expectations {
50  public ExpectationsForPressureProvider() throws Exception {
51  expectationsForPressureGauge();
52  expectationsForKernel();
53  expectationsForTaskRunner();
54  }
55 
56  private void expectationsForPressureGauge() throws Exception {
57  allowing(pressureGauge).getPressure();
58  }
59 
60  private void expectationsForKernel(){
61  oneOf(mockKernel).getTaskRunner();
62  will(returnValue(mockTaskRunner));
63  }
64 
65  private void expectationsForTaskRunner(){
66  oneOf(mockTaskRunner).execute(with(any(Runnable.class)));
67  }
68  }
69 }
final Mockery context
Git Repo