public void UseArguments(string argument, bool equality)
        {
            var plan = new Plan(
                Invoke("equals", equality)
                );

            var coroutine = new Regular.Entry(argument, plan.Spy <bool>("equals"));

            plan.AssertMatch(coroutine);
        }
        public void WorkWithOut()
        {
            var plan = new Plan(
                Suspend("Middle"),
                Invoke("action", 123)
                );

            var coroutine = new Out.Entry(plan.Spy <int>("action"));

            plan.AssertMatch(coroutine);
        }
        public void WorkWithOutDeclaration()
        {
            var plan = new Plan(
                Invoke("action", 19),
                Suspend("Parsed"),
                Invoke("action", 26)
                );

            var coroutine = new OutDeclaration.Entry(plan.Spy <int>("action"));

            plan.AssertMatch(coroutine);
        }