示例#1
0
        public void OkOutputDirectory()
        {
            args = new string[] { "-d", tmpPath, inputFile };
            string generatedFile = Path.Combine(tmpPath, "HelloWorldFsm.cs");

            File.Delete(generatedFile);
            StateBuilderCli.ReturnCode errorCode = app.run(args);
            Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.Ok);
            Assert.IsTrue(File.Exists(generatedFile));
        }
示例#2
0
 public void InputFileNotFound()
 {
     args = new string[] { "NotExistingFile.fsmcs" };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.IOException);
 }
示例#3
0
 public void InvalidOption()
 {
     args = new string[] { "--NotExistingFileOption " };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.InvalidCommandLine);
 }
示例#4
0
 public void EventInterfaceInvalid()
 {
     args = new string[] { eventInterfaceInvalid };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#5
0
 public void NoArgument()
 {
     args = new string[] { };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.InvalidCommandLine);
 }
示例#6
0
 public void TimerStopDoNotExist03()
 {
     args = new string[] { timerStopDoNotExist03 };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#7
0
 public void DuplicatedState()
 {
     args = new string[] { duplicatedState };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#8
0
 public void GuardConditionOrder02()
 {
     args = new string[] { guardConditionOrder02 };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#9
0
 public void SyncAndTimers()
 {
     args = new string[] { syncAndTimers };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#10
0
 public void FinalStateIsNotLeaf()
 {
     args = new string[] { finalStateIsNotLeaf };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#11
0
 public void EventDoesNotExist()
 {
     args = new string[] { eventDoesNotExistFile };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#12
0
 public void NotWellFormed02()
 {
     args = new string[] { inputFileNotWellFormed02 };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.XmlException);
 }
示例#13
0
 public void CannotWriteOutput()
 {
     args = new string[] { "-d", "c:/", inputFile };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.UnauthorizedAccessException);
 }
示例#14
0
 public void KoInvalidOutputDirectory()
 {
     args = new string[] { "-d", "InvalidDirectory", inputFile };
     StateBuilderCli.ReturnCode errorCode = app.run(args);
     Assert.AreEqual(errorCode, StateBuilderCli.ReturnCode.IOException);
 }