public void TestIsTimestamp() { var c = StateMachineBuilder.ChoiceState() .Choice(StateMachineBuilder.Choice() .Transition(StateMachineBuilder.Next("NextState")) .Condition(StateMachineBuilder.IsTimestamp("$.isTimestamp", true))) .Choice(StateMachineBuilder.Choice() .Transition(StateMachineBuilder.Next("NextState")) .Condition(StateMachineBuilder.IsTimestamp("$.isTimestamp", false)) ) .Build(); var choices = c.Choices.ToArray(); Assert.False(choices[0].Condition.Match(JObject.FromObject(new { isTimestamp = "str" }))); Assert.True(choices[0].Condition.Match(JObject.FromObject(new { isTimestamp = DateTime.Now }))); Assert.False(choices[0].Condition.Match(JObject.FromObject(new { isTimestamp = 33 }))); Assert.False(choices[0].Condition.Match(JObject.FromObject(new { isTimestamp = 33.23 }))); Assert.True(choices[1].Condition.Match(JObject.FromObject(new { isTimestamp = "str" }))); Assert.False(choices[1].Condition.Match(JObject.FromObject(new { isTimestamp = DateTime.Now }))); Assert.True(choices[1].Condition.Match(JObject.FromObject(new { isTimestamp = 33 }))); Assert.True(choices[1].Condition.Match(JObject.FromObject(new { isTimestamp = 33.23 }))); }