CUITe.IntegrationTests.NuGet.AssemblyResourceLoader.ExtractEmbeddedResource C# (CSharp) Method

ExtractEmbeddedResource() public static method

public static ExtractEmbeddedResource ( Assembly assembly, string resourceName, string outputFilePath ) : void
assembly System.Reflection.Assembly
resourceName string
outputFilePath string
return void
        public static void ExtractEmbeddedResource(Assembly assembly, string resourceName, string outputFilePath)
        {
            using (Stream input = assembly.GetManifestResourceStream(resourceName))
            {
                if (input == null)
                {
                    throw new Exception(string.Format("Failed to get manifest resource stream '{0}' in assembly '{1}'", resourceName, assembly.Location));
                }

                using (Stream output = File.Open(outputFilePath, FileMode.Create))
                {
                    byte[] buffer = new byte[8 * 1024];
                    int len;
                    while ((len = input.Read(buffer, 0, buffer.Length)) > 0)
                    {
                        output.Write(buffer, 0, len);
                    }
                }
            }
        }
    }

Usage Example

Example #1
0
        public void WhenTestMethodsAreAddedToTheProjectWhichUseCUITeToTestTheSampleApplicationS()
        {
            // HTML
            Assembly assembly = Assembly.GetExecutingAssembly();

            string htmlTestsCsFilePath = Path.Combine(this.testProjectPath, "HtmlTests.cs");

            AssemblyResourceLoader.ExtractEmbeddedResource(assembly, "CUITe.IntegrationTests.NuGet.HtmlTests.cs", htmlTestsCsFilePath);
            this.testProject.ProjectItems.AddFromFile(htmlTestsCsFilePath);

            string tempWebPageCsFilePath = Path.Combine(this.testProjectPath, "TempWebPage.cs");

            AssemblyResourceLoader.ExtractEmbeddedResource(assembly, "CUITe.IntegrationTests.NuGet.TempWebPage.cs", tempWebPageCsFilePath);
            this.testProject.ProjectItems.AddFromFile(tempWebPageCsFilePath);

            // TODO: Silverlight
        }
AssemblyResourceLoader