private TestHostContext CreateTestContext([CallerMemberName] String testName = "")
        {
            var hc = new TestHostContext(this, testName);
            var expressionManager = new ExpressionManager();

            expressionManager.Initialize(hc);
            hc.SetSingleton <IExpressionManager>(expressionManager);
            Dictionary <string, VariableValue> variablesToCopy = new Dictionary <string, VariableValue>();

            _variables = new Variables(
                hostContext: hc,
                copy: variablesToCopy);
            _ec = new Mock <IExecutionContext>();
            _ec.SetupAllProperties();
            _ec.Setup(x => x.Variables).Returns(_variables);

            _contexts           = new DictionaryContextData();
            _jobContext         = new JobContext();
            _contexts["github"] = new DictionaryContextData();
            _contexts["runner"] = new DictionaryContextData();
            _contexts["job"]    = _jobContext;
            _ec.Setup(x => x.ExpressionValues).Returns(_contexts);
            _ec.Setup(x => x.JobContext).Returns(_jobContext);

            _stepContext = new StepsContext();
            _ec.Setup(x => x.StepsContext).Returns(_stepContext);

            _ec.Setup(x => x.PostJobSteps).Returns(new Stack <IStep>());

            _stepsRunner = new StepsRunner();
            _stepsRunner.Initialize(hc);
            return(hc);
        }
Example #2
0
        private TestHostContext CreateTestContext([CallerMemberName] String testName = "")
        {
            var hc = new TestHostContext(this, testName);
            Dictionary <string, VariableValue> variablesToCopy = new Dictionary <string, VariableValue>();

            _variables = new Variables(
                hostContext: hc,
                copy: variablesToCopy);
            _env = new Dictionary <string, string>()
            {
                { "env1", "1" },
                { "test", "github_actions" }
            };
            _ec = new Mock <IExecutionContext>();
            _ec.SetupAllProperties();
            _ec.Setup(x => x.Global).Returns(new GlobalContext {
                WriteDebug = true
            });
            _ec.Object.Global.Variables            = _variables;
            _ec.Object.Global.EnvironmentVariables = _env;

            _contexts           = new DictionaryContextData();
            _jobContext         = new JobContext();
            _contexts["github"] = new GitHubContext();
            _contexts["runner"] = new DictionaryContextData();
            _contexts["job"]    = _jobContext;
            _ec.Setup(x => x.ExpressionValues).Returns(_contexts);
            _ec.Setup(x => x.ExpressionFunctions).Returns(new List <IFunctionInfo>());
            _ec.Setup(x => x.JobContext).Returns(_jobContext);

            _stepContext = new StepsContext();
            _ec.Object.Global.StepsContext = _stepContext;

            _ec.Setup(x => x.PostJobSteps).Returns(new Stack <IStep>());

            var trace = hc.GetTrace();

            _ec.Setup(x => x.Write(It.IsAny <string>(), It.IsAny <string>())).Callback((string tag, string message) => { trace.Info($"[{tag}]{message}"); });

            _stepsRunner = new StepsRunner();
            _stepsRunner.Initialize(hc);
            return(hc);
        }
Example #3
0
        private TestHostContext CreateTestContext([CallerMemberName] String testName = "")
        {
            var hc = new TestHostContext(this, testName);
            var expressionManager = new ExpressionManager();

            expressionManager.Initialize(hc);
            hc.SetSingleton <IExpressionManager>(expressionManager);
            Dictionary <string, VariableValue> variablesToCopy = new Dictionary <string, VariableValue>();

            _variables = new Variables(
                hostContext: hc,
                copy: variablesToCopy);
            _env = new Dictionary <string, string>()
            {
                { "env1", "1" },
                { "test", "github_actions" }
            };
            _ec = new Mock <IExecutionContext>();
            _ec.SetupAllProperties();
            _ec.Setup(x => x.Variables).Returns(_variables);

            _contexts           = new DictionaryContextData();
            _jobContext         = new JobContext();
            _contexts["github"] = new DictionaryContextData();
            _contexts["runner"] = new DictionaryContextData();
            _contexts["job"]    = _jobContext;
            _ec.Setup(x => x.ExpressionValues).Returns(_contexts);
            _ec.Setup(x => x.JobContext).Returns(_jobContext);

            _stepContext = new StepsContext();
            _ec.Setup(x => x.StepsContext).Returns(_stepContext);

            _ec.Setup(x => x.PostJobSteps).Returns(new Stack <IStep>());

            var trace = hc.GetTrace();

            _ec.Setup(x => x.Write(It.IsAny <string>(), It.IsAny <string>())).Callback((string tag, string message) => { trace.Info($"[{tag}]{message}"); });

            _stepsRunner = new StepsRunner();
            _stepsRunner.Initialize(hc);
            return(hc);
        }
        public void ProcessText()
        {
            // Arrange
            string buddyText = GetBuddyTextForTest();

            // Act
            BuddyTextProcessor buddyTextProcessor = new BuddyTextProcessor();
            TestcaseContext    testcaseContext    = buddyTextProcessor.ProcessText(buddyText);

            // Assert
            Assert.IsNotNull(testcaseContext, "testcaseContext != null");

            ApplicationContext appCtx = testcaseContext.Application;

            Assert.IsNotNull(appCtx, "appCtx != null");
            Assert.AreEqual("Verwaltung", appCtx.Name, "appCtx.Name != Verwaltung");

            Version appVrsn = appCtx.Version;

            Assert.IsNotNull(appVrsn, "appVrsn != null");
            Assert.AreEqual("9.512", appVrsn.Min, "appVrsn.Min != 9.512");
            Assert.AreEqual("*", appVrsn.Max, "appVrsn.Max != *");

            UsecaseContext usecaseCtx = testcaseContext.Usecase;

            Assert.IsNotNull(usecaseCtx, "usecaseCtx != null");
            Assert.AreEqual("Mitarbeitermodul von GTÜ", usecaseCtx.Name, "usecaseCtx.Name has unexpected value");

            ScenarioContext sceneCtx = testcaseContext.Scenario;

            Assert.IsNotNull(sceneCtx, "sceneCtx != null");
            Assert.AreEqual("1. Grundtest ", sceneCtx.Name, "sceneCtx.Name has unexpected value");

            ScenarioParameter[] sceneArgs = sceneCtx.ScenarioParameters;
            Assert.IsNotNull(sceneArgs, "sceneArgs != null");
            Assert.AreEqual(3, sceneArgs.Length, "sceneArgs.Length != 3");

            Assert.AreEqual("piNr", sceneArgs[0].Name, "sceneArgs[0].Name != piNr");
            Assert.AreEqual("\"001\"", sceneArgs[0].Value, "sceneArgs[0].Value != \"001\"");
            Assert.AreEqual("piPass", sceneArgs[1].Name, "sceneArgs[1].Name != piPass");
            Assert.AreEqual("\"Passw001\"", sceneArgs[1].Value, "sceneArgs[1].Value != \"Passw001\"");
            Assert.AreEqual("tabelle", sceneArgs[2].Name, "sceneArgs[2].Name != tabelle");
            Assert.AreEqual("\"C:\\daten\\lfz.xls\"", sceneArgs[2].Value, "sceneArgs[2].Value != \"C:\\daten\\lfz.xls\"");

            Import[] importSet = testcaseContext.Imports;
            Assert.IsNotNull(importSet, "importSet != null");
            Assert.AreEqual(2, importSet.Length, "importSet.Length != 2");

            Assert.AreEqual("Verwaltung.s.Mitarbeitermodul.Meine_Daten_bearbeiten", importSet[0].Name, "importSet[0].Name has unexpected value");
            Assert.AreEqual("Verwaltung.s.Mitarbeitermodul.Rechte_wiederherstellen", importSet[1].Name, "importSet[1].Name has unexpected value");

            StepsContext stepsContext = testcaseContext.Steps;

            Assert.IsNotNull(stepsContext, "stepsContext != null");

            DirectiveContext[] directiveSet = stepsContext.Directives;
            Assert.IsNotNull(directiveSet, "directiveSet != null");
            Assert.AreEqual(8, directiveSet.Length, "directiveSet.Length != 8");

            DirectiveContext frstDir = directiveSet[0];

            Assert.AreEqual(5, frstDir.References.Length, "[1] directive: Unexpected reference count");
            Assert.AreEqual("Wähle", frstDir.References[0].Value, "[1] directive: Unexpected verb");
            Assert.IsAssignableFrom <ParameterReference>(frstDir.References[1], "[1] directive: Unexpected reference type");
            Assert.AreEqual("piNr", frstDir.References[1].Value, "[1] directive: Unexpected reference value");
        }
Example #5
0
 public HomeController(StepsContext context)
 {
     _context = context;
 }
Example #6
0
 public ItemsController(StepsContext context)
 {
     _context = context;
 }
Example #7
0
 public FlightSearchUiSteps(StepsContext stepsContext) : base(stepsContext)
 {
 }
Example #8
0
 public FitsposController(StepsContext context, IWebHostEnvironment hostEnvironment)
 {
     _context           = context;
     webHostEnvironment = hostEnvironment;
 }
Example #9
0
 public BaseUiSteps(StepsContext stepsContext)
 {
     this.stepsContext = stepsContext;
 }