コード例 #1
0
        public void Properties()
        {
            var stateTransition = new ValueStateTransition<UpdateState, string>(UpdateState.Ready,UpdateState.DownloadingUpdate,"Start");

            Assert.IsTrue(stateTransition.IsValid("Start"));
            Assert.IsFalse(stateTransition.IsValid("Stop"));
        }
コード例 #2
0
 public void IsValid_from_input()
 {
     var transition = new ValueStateTransition<string, string>("Start", "End", "Run");
     Assert.IsTrue(transition.IsValid("Run"));
     Assert.IsFalse(transition.IsValid(null));
     Assert.IsFalse(transition.IsValid(string.Empty));
 }
コード例 #3
0
 public void IsValid_from_input_of_value_type()
 {
     var transition = new ValueStateTransition<string, int>("Start", "End", 1);
     Assert.IsTrue(transition.IsValid(1));
     Assert.IsFalse(transition.IsValid(0));
     Assert.IsFalse(transition.IsValid(-1));
 }
コード例 #4
0
        public void Constructor()
        {
            var stateTransition = new ValueStateTransition<UpdateState, UpdateCommand>(UpdateState.Ready,
                                                                                  UpdateState.DownloadingUpdate,
                                                                                  UpdateCommand.Download);

            Assert.AreEqual(UpdateState.Ready, stateTransition.FromState);
            Assert.AreEqual(UpdateState.DownloadingUpdate, stateTransition.ToState);
            Assert.AreEqual(UpdateCommand.Download, stateTransition.InputValue);
            Assert.IsTrue( stateTransition.IsValid(UpdateCommand.Download) );
        }