コード例 #1
0
        internal override IEnumerable <AAction> CreateTestActions(AActionContext context)
        {
            // Run Test
            yield return(new ARunAllMCutTestCasesAction("Run Determinism Test"));

            if (context.MCutTestRun != null)
            {
                // View w/Concurrency Explorer
                yield return(new AViewConcurrencyExplorerAction());

                // Repeat Test
                yield return(new ARerunMChessTestAction("Repeat Test")
                {
                    ChildrenIfApplicable = new[] {
                        MChessTestController.CreateMChessOptionsModifier_WithBounds(),
                        //MChessTestController.CreateMChessOptionsModifier_WithTracing(false),
                        MChessTestController.CreateMChessOptionsModifier_WithDebugger(),
                        MChessTestController.CreateMChessOptionsModifier_WithLogging(),
                    }
                });

                // Repro Chess Result
                if (context.ChessResult != null)
                {
                    yield return(new SeparatorFauxAction());

                    foreach (var a in MChessTestController.CreateChessResultActions())
                    {
                        yield return(a);
                    }
                }
            }
        }
コード例 #2
0
        internal override IEnumerable <AAction> CreateTestActions(AActionContext context)
        {
            // NOTE: For data race tests, we're not giving the user as many of the options as a normal MChess test
            // If users want certain options available, then we can add back as we go.

            // Run Test
            yield return(new ARunAllMCutTestCasesAction <MChessTestRunOptions>("Run Schedule Test")
            {
                ChildrenIfApplicable = MChessTestController.CreateChessBoundsActions(),
            });

            if (context.MCutTestRun != null)
            {
                // View w/Concurrency Explorer
                yield return(new AViewConcurrencyExplorerAction());

                // Repeat Test
                yield return(new ARerunMChessTestAction("Repeat Test")
                {
                    ChildrenIfApplicable = new[] {
                        MChessTestController.CreateMChessOptionsModifier_WithBounds(),
                        //MChessTestController.CreateMChessOptionsModifier_WithTracing(false),
                        MChessTestController.CreateMChessOptionsModifier_WithDebugger(),
                        MChessTestController.CreateMChessOptionsModifier_WithLogging(),
                    }
                });

                // Continue Test
                yield return(new AContinueMChessTestRunAction()
                {
                    ChildrenIfApplicable = new[] {
                        MChessTestController.CreateMChessOptionsModifier_WithBounds(),
                        //MChessTestController.CreateMChessOptionsModifier_WithTracing(true),
                    }
                });

                // Repro Last Schedule
                yield return(new AReproLastMChessTestRunScheduleAction()
                {
                    ChildrenIfApplicable = new[] {
                        MChessTestController.CreateMChessOptionsModifier_WithTracing(false),
                        MChessTestController.CreateMChessOptionsModifier_WithDebugger(),
                        MChessTestController.CreateMChessOptionsModifier_WithLogging(),
                    }
                });

                // Repro Chess Result
                if (context.ChessResult != null)
                {
                    yield return(new SeparatorFauxAction());

                    foreach (var a in MChessTestController.CreateChessResultActions())
                    {
                        yield return(a);
                    }
                }
            }
        }
コード例 #3
0
        internal override IEnumerable <AAction> CreateTestActions(AActionContext context)
        {
            // Run Test
            yield return(new ARunAllMCutTestCasesAction("Run Observation Generator"));

            if (context.MCutTestRun != null)
            {
                // View w/Concurrency Explorer
                yield return(new AViewConcurrencyExplorerAction());

                // Repro Chess Result
                if (context.ChessResult != null)
                {
                    yield return(new SeparatorFauxAction());

                    foreach (var a in MChessTestController.CreateChessResultActions())
                    {
                        yield return(a);
                    }
                }
            }
        }