public void can_be_ran()
        {
            AFixture fixture = new AFixture();

            var sut = new NJasmineTestMethod(() => fixture, new TestPosition(1, 3, 2), new FakeGlobalSetupManager());

            List<string> ignored;
            sut.RunTestMethod(new TestResult(new TestName()), out ignored);

            expect_observation_matches(fixture.Observations, 1, 2, 3, 4, 5, 6, 7, -2, -3, -4, 8);
        }
        public void duplicated_runs_dont_accidentally_accumulate_afterEach_calls()
        {
            AFixture fixture = new AFixture();

            var sut = new NJasmineTestMethod(() => fixture, new TestPosition(1, 3, 2), new FakeGlobalSetupManager());

            List<string> ignored;
            sut.RunTestMethod(new TestResult(new TestName()), out ignored);

            fixture.ResetObservations();

            sut.RunTestMethod(new TestResult(new TestName()), out ignored);

            expect_observation_matches(fixture.Observations, 1, 2, 3, 4, 5, 6, -2, -3, -4, 7, 8);
        }
        void expect_test_to_observe(TestPosition testPosition, List<string> expected)
        {
            var fixture = new has_test_in_loop();
            var method = new NJasmine.Core.NJasmineTestMethod(() => fixture, testPosition, new FakeGlobalSetupManager());

            TestResult result = new TestResult(method);
            List<string> ignored;
            method.RunTestMethod(result, out ignored);

            expect(() => result.IsSuccess);

            Assert.That(fixture.Observations, Is.EquivalentTo(expected));
        }