private void Should_parse_csproj_file_correctly(string csprojPath, string language, string assemblyName, string rootNamespace, string projectName) { string directoryName = Path.GetDirectoryName(new Uri(GetType().Assembly.CodeBase).LocalPath); string projectFilePath = Path.Combine(directoryName, csprojPath); var specFlowJsonLocatorMock = new Mock <ISpecFlowJsonLocator>(); var configurationLoader = new ConfigurationLoader(specFlowJsonLocatorMock.Object); var generatorConfigurationProvider = new GeneratorConfigurationProvider(configurationLoader); var projectLanguageReader = new ProjectLanguageReader(); var reader = new ProjectReader(generatorConfigurationProvider, projectLanguageReader); var specFlowProjectFile = reader.ReadSpecFlowProject(projectFilePath, rootNamespace); specFlowProjectFile.ProjectSettings.DefaultNamespace.Should().Be(rootNamespace); specFlowProjectFile.ProjectSettings.ProjectName.Should().Be(projectName); specFlowProjectFile.ProjectSettings.ProjectPlatformSettings.Language.Should().Be(language); specFlowProjectFile.Configuration.SpecFlowConfiguration.AllowDebugGeneratedFiles.Should().BeFalse(); specFlowProjectFile.Configuration.SpecFlowConfiguration.AllowRowTests.Should().BeTrue(); specFlowProjectFile.Configuration.SpecFlowConfiguration.FeatureLanguage.Name.Should().Be("en-US"); }