Example #1
0
        public static ScenarioResult Run(this Scenario scenario, IRemoteClient proxy)
        {
            var scenarioResult = new ScenarioResult();

            scenarioResult.ScenarioName = scenario.Name;

            scenario.Children = scenario.Children.OrderBy(d => d.Index).ToList();

            scenario.Children.ForEach(i => scenarioResult.InteractionResults.Add((i as Interaction).Run(proxy)));

            scenarioResult.SetResult();

            if (!scenario.ExpectFailure)
                return scenarioResult;
            else
                if (scenarioResult.Result.status.ToLower().Equals("pass"))
                {
                    scenarioResult.Result.status = "FAIL";
                    scenarioResult.Result.error = "Expected failure, but scenario incorrectly passed.";
                }
                else
                {
                    scenarioResult.Result.status = "PASS";
                    scenarioResult.Result.error = "";
                    scenarioResult.Result.retrn = "Scenario failed correctly.";
                }

            return scenarioResult;
        }
Example #2
0
        public static StoryResult Run(this Story story, ILauncherClient client)
        {
            var storyResult = Behavior.Kernel.Get<StoryResult>();

            storyResult.StoryName = story.Name;

            MapScenarios(story);

            testScenarios = Behavior.Kernel.Get<IScenarioBuilder>().Build(testScenarios);

            var fixtureUrl = "http://" + Behavior.Config.Host + "/" + Behavior.Config.FixtureContext;

            var httpResult = client.RequestFixtureLaunch(fixtureUrl, 10);

            if (httpResult.status.ToLower().Equals("pass"))
            {
                var proxy = XmlRpcProxyGen.Create(typeof(IRemoteClient)) as IRemoteClient;

                proxy.Url = httpResult.retrn.ToString();

                storyResult = RunScenarios(storyResult, proxy);

                client.StopFixtureServer(fixtureUrl);

                storyResult.SetResult();

                return storyResult;
            }
            else
            {
                var scenarioResult = new ScenarioResult();

                scenarioResult.InteractionResults.Add(new InteractionResult(httpResult));

                scenarioResult.SetResult();

                storyResult.ScenarioResults.Add(scenarioResult);

                storyResult.SetResult();

                return storyResult;
            }
        }
Example #3
0
 public ScenarioReport(ScenarioResult scenarioResult)
 {
     ScenarioResult = scenarioResult;
 }