Пример #1
0
        public void should_load_assemblies_if_strings_used()
        {
            var assemblyLoader = MockRepository.GenerateMock<IAssemblyLoader>();
            var generator = new DocumentationGenerator(assemblyLoader, StubXmlLoader, StubParser, StubWriter, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "assembly.dll", "assembly2.dll" });

            assemblyLoader.AssertWasCalled(x => x.LoadFrom("assembly.dll"));
            assemblyLoader.AssertWasCalled(x => x.LoadFrom("assembly2.dll"));
        }
Пример #2
0
        public void should_load_assemblies_if_strings_used()
        {
            var assemblyLoader = MockRepository.GenerateMock <IAssemblyLoader>();
            var generator      = new DocumentationGenerator(assemblyLoader, StubXmlLoader, StubParser, StubWriter, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "assembly.dll", "assembly2.dll" });

            assemblyLoader.AssertWasCalled(x => x.LoadFrom("assembly.dll"));
            assemblyLoader.AssertWasCalled(x => x.LoadFrom("assembly2.dll"));
        }
Пример #3
0
        public void should_pass_default_output_path_to_writer_if_not_set()
        {
            var writer    = MockRepository.GenerateMock <IBulkPageWriter>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, StubParser, writer, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "unimportant_file_path" });
            generator.Generate();

            writer.AssertWasCalled(x => x.CreatePagesFromDirectory(null, null, null),
                                   x => x.Constraints(Is.Anything(), Is.Equal("output"), Is.Anything()));
        }
Пример #4
0
        public void should_pass_default_output_path_to_writer_if_not_set()
        {
            var writer = MockRepository.GenerateMock<IBulkPageWriter>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, StubParser, writer, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "unimportant_file_path" });
            generator.Generate();

            writer.AssertWasCalled(x => x.CreatePagesFromDirectory(null, null, null),
                                   x => x.Constraints(Is.Anything(), Is.Equal("output"), Is.Anything()));
        }
Пример #5
0
        public void generate_should_pass_assemblies_to_parser_when_set_directly()
        {
            var parser = MockRepository.GenerateMock<IAssemblyXmlParser>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, parser, StubWriter, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { typeof(IAssemblyLoader).Assembly });
            generator.Generate();

            parser.AssertWasCalled(x => x.CreateDocumentModel(null, null),
                x => x.Constraints(List.ContainsAll(new[] { typeof(IAssemblyLoader).Assembly }), Is.Anything()));
        }
Пример #6
0
        public void generate_should_pass_assemblies_to_parser_when_set_directly()
        {
            var parser    = MockRepository.GenerateMock <IAssemblyXmlParser>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, parser, StubWriter, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { typeof(IAssemblyLoader).Assembly });
            generator.Generate();

            parser.AssertWasCalled(x => x.CreateDocumentModel(null, null),
                                   x => x.Constraints(List.ContainsAll(new[] { typeof(IAssemblyLoader).Assembly }), Is.Anything()));
        }
Пример #7
0
        public void should_move_untransformable_resources_to_output_dir()
        {
            var resourceManager = MockRepository.GenerateMock <IUntransformableResourceManager>();
            var generator       = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, StubParser, StubWriter, resourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "unimportant_file_path" });
            generator.SetOutputPath("output-dir");
            generator.Generate();

            resourceManager.AssertWasCalled(x => x.MoveResources(null, null),
                                            x => x.Constraints(Is.Anything(), Is.Equal("output-dir")));
        }
Пример #8
0
        public void should_move_untransformable_resources_to_output_dir()
        {
            var resourceManager = MockRepository.GenerateMock<IUntransformableResourceManager>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, StubParser, StubWriter, resourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "unimportant_file_path" });
            generator.SetOutputPath("output-dir");
            generator.Generate();

            resourceManager.AssertWasCalled(x => x.MoveResources(null, null),
                                            x => x.Constraints(Is.Anything(), Is.Equal("output-dir")));
        }
Пример #9
0
        public void set_assemblies_should_fire_event_if_bad_file_found()
        {
            var parser = MockRepository.GenerateMock<IAssemblyXmlParser>();
            var badFileFound = false;

            var generator = new DocumentationGenerator(new AssemblyLoader(), StubXmlLoader, parser, StubWriter, StubResourceManager);
            generator.BadFileEvent += (s, e) => badFileFound = true;

            generator.SetAssemblies(new[] { "docu.pdb" });

            badFileFound.ShouldBeTrue();
        }
Пример #10
0
        public void set_assemblies_should_publish_event_if_bad_file_found()
        {
            var ev = MockRepository.GenerateMock<BadFileEvent>();
            var parser = MockRepository.GenerateMock<IAssemblyXmlParser>();

            StubEventAggregator.Stub(x => x.GetEvent<BadFileEvent>())
                .Return(ev);

            var generator = new DocumentationGenerator(new AssemblyLoader(), StubXmlLoader, parser, StubWriter, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "docu.pdb" });

            ev.AssertWasCalled(x => x.Publish("docu.pdb"));
        }
Пример #11
0
        public void set_assemblies_should_publish_event_if_bad_file_found()
        {
            var ev     = MockRepository.GenerateMock <BadFileEvent>();
            var parser = MockRepository.GenerateMock <IAssemblyXmlParser>();

            StubEventAggregator.Stub(x => x.GetEvent <BadFileEvent>())
            .Return(ev);

            var generator = new DocumentationGenerator(new AssemblyLoader(), StubXmlLoader, parser, StubWriter, StubResourceManager, StubEventAggregator);

            generator.SetAssemblies(new[] { "docu.pdb" });

            ev.AssertWasCalled(x => x.Publish("docu.pdb"));
        }
Пример #12
0
        public void generate_should_pass_assemblies_to_parser_when_set_by_name()
        {
            var parser = MockRepository.GenerateMock<IAssemblyXmlParser>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, parser, StubWriter, StubResourceManager);

            StubAssemblyLoader.Stub(x => x.LoadFrom(null))
                .IgnoreArguments()
                .Return(typeof(IAssemblyLoader).Assembly);

            generator.SetAssemblies(new[] { "assembly.dll" });
            generator.Generate();

            parser.AssertWasCalled(x => x.CreateDocumentModel(null, null),
                x => x.Constraints(List.ContainsAll(new[] { typeof(IAssemblyLoader).Assembly }), Is.Anything()));
        }
Пример #13
0
        public void should_pass_document_model_to_writer()
        {
            var writer        = MockRepository.GenerateMock <IBulkPageWriter>();
            var generator     = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, StubParser, writer, StubResourceManager, StubEventAggregator);
            var documentModel = new List <Namespace>();

            StubParser.Stub(x => x.CreateDocumentModel(null, null))
            .IgnoreArguments()
            .Return(documentModel);

            generator.SetAssemblies(new [] { "unimportant_file_path" });
            generator.Generate();

            writer.AssertWasCalled(x => x.CreatePagesFromDirectory(null, null, null),
                                   x => x.Constraints(Is.Anything(), Is.Anything(), Is.Equal(documentModel)));
        }
Пример #14
0
        public void should_pass_document_model_to_writer()
        {
            var writer = MockRepository.GenerateMock<IBulkPageWriter>();
            var generator = new DocumentationGenerator(StubAssemblyLoader, StubXmlLoader, StubParser, writer, StubResourceManager, StubEventAggregator);
            var documentModel = new List<Namespace>();

            StubParser.Stub(x => x.CreateDocumentModel(null, null))
                .IgnoreArguments()
                .Return(documentModel);

            generator.SetAssemblies(new []{"unimportant_file_path"});
            generator.Generate();

            writer.AssertWasCalled(x => x.CreatePagesFromDirectory(null, null, null),
                                   x => x.Constraints(Is.Anything(), Is.Anything(), Is.Equal(documentModel)));
        }