Ejemplo n.º 1
0
        public async Task <A> TestExpr <T, D, A>(T state, D dependencies, Port <A> expr, params object[] paths)
        {
            var idempotency = paths.OfType <Idempotency>().SingleOrDefault();
            var mockContext = MockContext.GetInstance(paths);
            var sp          = CreateServiceProvider(mockContext, _adapterAssemblies);
            var interpreter = new MockInterpreterAsync(sp);

            A result = default;

            switch (idempotency)
            {
            case Idempotency.RunOnce:
                result = await interpreter.Interpret(expr, state, dependencies);

                break;

            case Idempotency.RunTwice:
                result = await interpreter.Interpret(expr, state, dependencies);

                result = await interpreter.Interpret(expr, state, dependencies);

                break;
            }
            return(result);
        }
Ejemplo n.º 2
0
        public async Task <A> TestExpr <A>(IO <A> expr, params object[] paths)
        {
            var mockContext = MockContext.GetInstance(paths);
            var sp          = CreateServiceProvider(mockContext);
            var interpreter = new MockInterpreterAsync(sp);
            var result      = await interpreter.Interpret(expr, Unit.Default);

            return(result);
        }