public GivenThatWeWantToParseArgumentsForDotnetTest()
        {
            _dotnetTestFullParamsWithProjectJson = new DotnetTestParams();
            _dotnetTestParamsWithAssembly        = new DotnetTestParams();
            _emptyDotnetTestParams = new DotnetTestParams();

            _dotnetTestFullParamsWithProjectJson.Parse(new[]
            {
                ProjectJson,
                "--parentProcessId", ParentProcessId.ToString(),
                "--port", Port.ToString(),
                "--framework", Framework,
                "--output", Output,
                "--build-base-path", BuildBasePath,
                "--configuration", Config,
                "--runtime", Runtime,
                "--no-build",
                "--additional-parameters", "additional-parameter-value"
            });

            _dotnetTestParamsWithAssembly.Parse(new[]
            {
                PathToAssemblyUnderTest,
                "--test-runner", TestRunner
            });

            _emptyDotnetTestParams.Parse(new string[] { });
        }
        public void It_sets_Help_to_true_when_help_is_passed_in()
        {
            var dotnetTestParams = new DotnetTestParams();

            dotnetTestParams.Parse(new[] { "--help" });

            dotnetTestParams.Help.Should().BeTrue();
        }
        public void It_sets_the_framework_to_unsupported_when_an_invalid_framework_is_passed_in()
        {
            var dotnetTestParams = new DotnetTestParams();

            dotnetTestParams.Parse(new[] { "--framework", "farm work" });

            dotnetTestParams.Framework.DotNetFrameworkName.Should().Be("Unsupported,Version=v0.0");
        }
        public void It_throws_InvalidOperationException_if_an_invalid_port_is_passed_to_it()
        {
            var          dotnetTestParams = new DotnetTestParams();
            const string invalidPort      = "door";
            Action       action           = () => dotnetTestParams.Parse(new[] { "--port", invalidPort });

            action
            .ShouldThrow <InvalidOperationException>()
            .WithMessage($"{invalidPort} is not a valid port number.");
        }
        public void It_throws_InvalidOperationException_if_an_invalid_parent_process_id_is_passed_to_it()
        {
            var          dotnetTestParams       = new DotnetTestParams();
            const string invalidParentProcessId = "daddy";
            Action       action = () => dotnetTestParams.Parse(new [] { "--parentProcessId", invalidParentProcessId });

            action
            .ShouldThrow <InvalidOperationException>()
            .WithMessage($"Invalid process id '{invalidParentProcessId}'. Process id must be an integer.");
        }
        public void It_throws_when_you_specify_a_testRunner_along_with_a_project_json()
        {
            var    dotnetTestParams = new DotnetTestParams();
            Action action           = () => dotnetTestParams.Parse(new[]
            {
                ProjectJson,
                "--test-runner", "someTestRunner"
            });

            action
            .ShouldThrow <InvalidOperationException>()
            .WithMessage("You can only specify a test runner with a dll.");
        }
Exemple #7
0
        public void It_returns_a_ParameterTestRunnerResolver_when_an_assembly_and_a_test_runner_are_passed()
        {
            var dotnetTestParams = new DotnetTestParams
            {
                ProjectOrAssemblyPath = PathToAnAssembly,
                TestRunner            = SomeTestRunner
            };

            var projectReaderMock = new Mock <IProjectReader>();

            var dotnetTestRunnerResolverFactory = new DotnetTestRunnerResolverFactory(projectReaderMock.Object);

            var testRunnerResolver = dotnetTestRunnerResolverFactory.Create(dotnetTestParams);

            testRunnerResolver.Should().BeOfType <ParameterTestRunnerNameResolver>();
        }
Exemple #8
0
        public void It_returns_a_ProjectJsonTestRunnerResolver_when_the_path_parameter_points_to_a_folder()
        {
            var dotnetTestParams = new DotnetTestParams
            {
                ProjectOrAssemblyPath = PathToAFolder
            };

            var projectReaderMock = new Mock <IProjectReader>();

            projectReaderMock
            .Setup(p => p.ReadProject(dotnetTestParams.ProjectOrAssemblyPath, null))
            .Returns(new Project());

            var dotnetTestRunnerResolverFactory = new DotnetTestRunnerResolverFactory(projectReaderMock.Object);

            var testRunnerResolver = dotnetTestRunnerResolverFactory.Create(dotnetTestParams);

            testRunnerResolver.Should().BeOfType <ProjectJsonTestRunnerNameResolver>();
        }