public void Should_Redirect_Standard_Error()
            {
                var fixture = new LibManInstallerFixture();

                fixture.Settings.RedirectStandardError = true;
                fixture.Settings.Library = "jquery";

                var result = fixture.Run();

                Assert.True(result.Process.RedirectStandardError);
            }
            public void Should_Throw_If_Library_Is_Null()
            {
                // Given
                var fixture = new LibManInstallerFixture();

                fixture.Settings.Library = null;

                // When
                var result = Record.Exception(() => fixture.Run());

                // Then
                result.IsArgumentNullException("Library");
            }
            public void Should_Add_Library_To_Arguments_If_Not_Null()
            {
                // Given
                var fixture = new LibManInstallerFixture();

                fixture.Settings.Library = "jquery";

                // When
                var result = fixture.Run();

                // Then
                Assert.Equal("install jquery", result.Args);
            }
            public void Should_Add_CdnProvider_To_Arguments_If_Not_Null(CdnProvider provider, string expected)
            {
                // Given
                var fixture = new LibManInstallerFixture();

                fixture.Settings.Library  = "jquery";
                fixture.Settings.Provider = provider;

                // When
                var result = fixture.Run();

                // Then
                Assert.Equal(expected, result.Args);
            }
            public void Should_Add_Files_Destination_Provider_To_Arguments_If_Not_Null()
            {
                // Given
                var fixture = new LibManInstallerFixture();

                fixture.Settings.Library     = "[email protected]";
                fixture.Settings.Provider    = CdnProvider.jsdelivr;
                fixture.Settings.Destination = "wwwroot/lib/jquery";
                fixture.Settings.Files.Add("dist/jquery.min.js");
                fixture.Settings.Files.Add("dist/jquery.slim.min.js");

                // When
                var result = fixture.Run();

                // Then
                Assert.Equal("install [email protected] --destination \"wwwroot/lib/jquery\" --provider jsdelivr --files \"dist/jquery.min.js\" --files \"dist/jquery.slim.min.js\"", result.Args);
            }