//[Test]
        public void IntegrationTest()
        {
            const string templatePath = @"..\..\Test Templates\Modeled Basic Template.odt";
            const string reportPath = @"..\..\Generated Reports\Very Basic Report.odt";
            const string expectedReportPath = @"..\..\Expected Report Outputs\Very Basic Report.odt";
            var templateFactory = new TemplateFactory();
            var zipFactory = new ZipFactory();
            var readerFactory = new StreamReaderWrapperFactory();
            var zipHandlerService = new ZipHandlerService( readerFactory );
            var buildOdfMetadataService = new BuildOdfMetadataService();
            var xmlNamespaceService = new XmlNamespaceService();
            var xDocumentParserService = new XDocumentParserService();
            var odfHandlerService = new OdfHandlerService( zipFactory, zipHandlerService, buildOdfMetadataService,
                                                           xmlNamespaceService, xDocumentParserService );

            var templateService = new TemplateBuilderService( templateFactory, odfHandlerService,
                                                              xmlNamespaceService, xDocumentParserService );
            var document = File.ReadAllBytes( templatePath );

            var template = templateService.BuildTemplate( document );
            var razorTemplateService = new TemplateService();
            var compileService = new CompileService( razorTemplateService );
            compileService.Compile( template, "Template 1" );

            var reportService = new ReportGeneratorService( new ZipFactory(), razorTemplateService );
            using( var report = new FileStream( reportPath, FileMode.Create ) )
            {
                reportService.BuildReport( template, new BasicModel {Name = "Fancypants McSnooterson"}, report );
            }
            var diffs = GetDifferences( expectedReportPath, reportPath );
            var thereAreDifferences = diffs.HasDifferences();
            Assert.That( !thereAreDifferences );
        }
 public DocumentInformation( OdfHandlerService.FileType fileType, Byte[] document, string content, OdfMetadata metadata )
 {
     FileType = fileType;
     Document = document;
     Content = content;
     Metadata = metadata;
 }