Example #1
0
            public void Should_Default_To_Directory_Harvest_Type()
            {
                // Given
                var fixture = new HeatFixture();

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -out \"/Working/cake.wxs\"", result.Args);
            }
Example #2
0
            public void Should_Throw_If_Context_Is_Null()
            {
                // Given
                var fixture = new HeatFixture();

                // When
                var result = Record.Exception(() => WiXAliases.WiXHeat(null, fixture.DirectoryPath, fixture.OutputFile, fixture.HarvestType));

                // Then
                Assert.IsArgumentNullException(result, "context");
            }
Example #3
0
            public void Should_Set_Working_Directory()
            {
                // Given
                var fixture = new HeatFixture();

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

                // Then
                Assert.Equal("/Working", result.Process.WorkingDirectory.FullPath);
            }
Example #4
0
            public void Should_Find_Heat_Runner_If_Tool_Path_Not_Provided()
            {
                // Given
                var fixture = new HeatFixture();

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

                // Then
                Assert.Equal("/Working/tools/heat.exe", result.Path.FullPath);
            }
Example #5
0
            public void Should_Add_Content_Output_Group_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.OutputGroup = WiXOutputGroupType.Content;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -pog Content -out \"/Working/cake.wxs\"", result.Args);
            }
Example #6
0
            public void Should_Add_File_Harvest_Type_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.HarvestType = WiXHarvestType.File;

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

                // Then
                Assert.Equal("file \"/Working/Cake.dll\" -out \"/Working/cake.wxs\"", result.Args);
            }
Example #7
0
            public void Should_Add_Keep_Empty_Directories_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.KeepEmptyDirectories = true;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -ke -out \"/Working/cake.wxs\"", result.Args);
            }
Example #8
0
            // Not a Valid Test case based on the fixture setup
            public void Should_Throw_If_Settings_Is_Null()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings = null;

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

                // Then
                Assert.IsArgumentNullException(result, "settings");
            }
Example #9
0
            public void Should_Add_Verbose_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.Verbose = true;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -v -out \"/Working/cake.wxs\"", result.Args);
            }
Example #10
0
            public void Should_Add_Template_Type_Product_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.Template = WiXTemplateType.Product;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -template product -out \"/Working/cake.wxs\"", result.Args);
            }
Example #11
0
            public void Should_Add_Configuration_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.Configuration = "Release";

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -configuration Release -out \"/Working/cake.wxs\"", result.Args);
            }
Example #12
0
            public void Should_Add_Component_Group_Name_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.ComponentGroupName = "CakeComponentGroup";

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -cg CakeComponentGroup -out \"/Working/cake.wxs\"", result.Args);
            }
Example #13
0
            public void Should_Add_Auto_Generate_Guid_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.AutogeneratedGuid = true;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -ag -out \"/Working/cake.wxs\"", result.Args);
            }
Example #14
0
            public void Should_Add_Treat_Specific_Warnings_As_Errors_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.TreatSpecificWarningsAsErrors = new[] { "1101", "1102" };

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -wx1101 -wx1102 -out \"/Working/cake.wxs\"", result.Args);
            }
Example #15
0
            public void Should_Add_Suppress_Specific_Warnings_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.SuppressSpecificWarnings = new[] { "0001", "0002" };

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -sw0001 -sw0002 -out \"/Working/cake.wxs\"", result.Args);
            }
Example #16
0
            public void Should_Add_Extension_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.Extensions = new[] { "WiXSecurityExtensions" };

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -ext WiXSecurityExtensions -out \"/Working/cake.wxs\"", result.Args);
            }
Example #17
0
            public void Should_Add_Project_Name_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.ProjectName = "Cake.Project";

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -projectname Cake.Project -out \"/Working/cake.wxs\"", result.Args);
            }
Example #18
0
            public void Should_Add_Suppress_Vb6_Com_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.SuppressVb6Com = true;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -svb6 -out \"/Working/cake.wxs\"", result.Args);
            }
Example #19
0
            public void Should_Add_Directory_Reference_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.DirectoryReferenceId = "CakeAppDirectoryReference";

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -dr CakeAppDirectoryReference -out \"/Working/cake.wxs\"", result.Args);
            }
Example #20
0
            public void Should_Add_Transform_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.Transform = "cake.xslt";

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -t \"cake.xslt\" -out \"/Working/cake.wxs\"", result.Args);
            }
Example #21
0
            public void Should_Throw_If_Directory_Path_Is_Null()
            {
                // Given
                var fixture = new HeatFixture();
                var context = Substitute.For <ICakeContext>();

                // When
                var result = Record.Exception(() => WiXAliases.WiXHeat(context, null, fixture.OutputFile));

                // Then
                Assert.IsArgumentNullException(result, "directoryPath");
            }
Example #22
0
            public void Should_Add_Generate_Binder_Variables_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.GenerateBinderVariables = true;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -wixvar -out \"/Working/cake.wxs\"", result.Args);
            }
Example #23
0
            public void Should_Add_Generate_Guid_Without_Braces_To_Arguments_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.GenerateGuidWithoutBraces = true;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -g1 -out \"/Working/cake.wxs\"", result.Args);
            }
Example #24
0
            public void Should_Not_Add_Generate_To_Arguments_If_Default_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Settings.Generate = WiXGenerateType.Components;

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

                // Then
                Assert.Equal("dir \"/Working/src/Cake\" -out \"/Working/cake.wxs\"", result.Args);
            }
Example #25
0
            public void Should_Add_Website_Harvest_Type_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.HarvestType = WiXHarvestType.Website;

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

                // Then
                Assert.Equal("website \"Default Web Site\" -out \"/Working/cake.wxs\"", result.Args);
            }
Example #26
0
            public void Should_Throw_If_Environment_Is_Null()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.Environment = null;

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

                // Then
                Assert.IsArgumentNullException(result, "environment");
            }
Example #27
0
            public void Should_Throw_If_Output_File_Empty()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.OutputFile = null;

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

                // Then
                Assert.IsType<ArgumentNullException>(result);
                Assert.Equal("outputFile", ((ArgumentException)result)?.ParamName);
            }
Example #28
0
            public void Should_Throw_If_Directory_Path_Empty()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.DirectoryPath = null;

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

                // Then
                Assert.IsType<ArgumentNullException>(result);
                Assert.Equal("directoryPath", ((ArgumentException)result)?.ParamName);
            }
Example #29
0
            public void Should_Add_Performance_Harvest_Type_If_Provided()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.HarvestType = WiXHarvestType.Perf;
                fixture.HarvestTarget = "Cake Category";

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

                // Then
                Assert.Equal("perf \"Cake Category\" -out \"/Working/cake.wxs\"", result.Args);
            }
Example #30
0
            public void Should_Throw_If_Heat_Runner_Was_Not_Found()
            {
                // Given
                var fixture = new HeatFixture();
                fixture.GivenDefaultToolDoNotExist();

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

                // Then
                Assert.IsType<CakeException>(result);
                Assert.Equal("Heat: Could not locate executable.", result?.Message);
            }