smcturnstyletest.java

来自「著名的uncle Bob的Agile software development的」· Java 代码 · 共 71 行

JAVA
71
字号
import junit.framework.*;import junit.swingui.TestRunner;public class SMCTurnstyleTest extends TestCase{  public static void main(String[] args)  {    TestRunner.main(new String[]{"SMCTurnstyleTest"});  }  public SMCTurnstyleTest(String name)  {    super(name);  }  private TurnstyleFSM t;  private boolean lockCalled = false;  private boolean unlockCalled = false;  private boolean thankyouCalled = false;  private boolean alarmCalled = false;  public void setUp()  {    TurnstyleController controllerSpoof = new TurnstyleController()    {      public void lock() {lockCalled = true;}      public void unlock() {unlockCalled = true;}      public void thankyou() {thankyouCalled = true;}      public void alarm() {alarmCalled = true;}    };    t = new TurnstyleFSM(controllerSpoof);  }  public void testInitialConditions()  {    assertEquals("Locked", t.getCurrentStateName());  }  public void testCoinInLockedState() throws Exception  {    t.coin();    assertEquals("Unlocked", t.getCurrentStateName());    assert(unlockCalled);  }  public void testCoinInUnlockedState() throws Exception  {    t.coin(); // put in Unlocked state    t.coin();    assertEquals("Unlocked", t.getCurrentStateName());    assert(thankyouCalled);  }  public void testPassInLockedState() throws Exception  {    t.pass();    assertEquals("Locked", t.getCurrentStateName());    assert(alarmCalled);  }  public void testPassInUnlockedState() throws Exception  {    t.coin(); // unlock    t.pass();    assertEquals("Locked", t.getCurrentStateName());    assert(lockCalled);  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?