示例#1
0
        public void FlowTypeIsCorrect()
        {
            var configurator = new FlowInitializerTestConfigurator <FlowInitializer>(_fixture);
            var adapter      = configurator.Adapter;

            Assert.AreEqual("GreenFlow".ToLowerInvariant(), adapter.GetFlowType());
        }
示例#2
0
        public async Task CanAuthorize()
        {
            var configurator = new FlowInitializerTestConfigurator <FlowInitializer>(_fixture);
            var adapter      = configurator.Adapter;
            await adapter.Initialize();

            Assert.IsTrue(adapter.Authorize());
        }
示例#3
0
        public void HandlingIsCorrect_OnStart(FlowInitializer.StartScreenModel whenDataIs, ScreenName expectedStep)
        {
            var configurator = new FlowInitializerTestConfigurator <FlowInitializer>(_fixture);

            configurator.NewEventTestRunner()
            .GivenTheStepDataIs(whenDataIs)
            .WhenEvent(ScreenEvent.Start)
            .TheResultStepIs((actualStep) => Assert.AreEqual(expectedStep, actualStep));
        }
示例#4
0
        public void InitializationIsCorrect(bool withInputParameters)
        {
            var           configurator = new FlowInitializerTestConfigurator <FlowInitializer>(_fixture);
            ExpandoObject p            = null;

            if (withInputParameters)
            {
                p = new
                {
                    sampleParameter = _fixture.Create <string>(),
                    Another         = _fixture.Create <string>()
                }.ToExpandoObject();
            }
            configurator.NewInitializationRunner().WithInput(withInputParameters ? p : null)
            .Run()
            .AssertStepData <FlowInitializer.StartScreenModel>(stepData =>
            {
                Assert.AreEqual(withInputParameters ? p.ToDynamic().sampleParameter : null,
                                stepData.SampleParameter);
            })
            .AssertTriggeredEventIs((actual) => Assert.AreEqual(ScreenEvent.Start, actual));
        }