public void VerifyCreatedCode_NoNamespaceConflict() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")) }; var assemblyInfoBuilder = new AssemblyInfoBuilder(); var config = new TestEffectiveConfiguration(); var versionVariables = VariableProvider.GetVariablesFor(semanticVersion, config, false); var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(versionVariables, "Fake.System"); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.System.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
public void VerifyCreatedCode() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")) }; var assemblyInfoBuilder = new AssemblyInfoBuilder(); var versionVariables = VariableProvider.GetVariablesFor(semanticVersion, AssemblyVersioningScheme.MajorMinorPatch, VersioningMode.ContinuousDelivery, "ci", false); var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(versionVariables); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.NetModule)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
static void VerifyAssemblyVersion(AssemblyVersioningScheme avs, string assemblyInformationalFormat = null) { var semanticVersion = new SemanticVersion { Major = 2, Minor = 3, Patch = 4, PreReleaseTag = "beta.5", BuildMetaData = new SemanticVersionBuildMetaData(6, "master", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")), }; var assemblyInfoBuilder = new AssemblyInfoBuilder(); var config = new TestEffectiveConfiguration(assemblyVersioningScheme: avs, assemblyInformationalFormat: assemblyInformationalFormat); var versionVariables = VariableProvider.GetVariablesFor(semanticVersion, config, false); var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(versionVariables, "Fake"); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.NetModule)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
public void VerifyCreatedCode() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")) }; var assemblyInfoBuilder = new AssemblyInfoBuilder { CachedVersion = new CachedVersion { SemanticVersion = semanticVersion } }; var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(new TestEffectiveConfiguration()); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.NetModule)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
static void VerifyAssemblyVersion(AssemblyVersioningScheme avs) { var semanticVersion = new SemanticVersion { Major = 2, Minor = 3, Patch = 4, BuildMetaData = new SemanticVersionBuildMetaData(5, "master", new ReleaseDate { OriginalCommitSha = "originalCommitSha", OriginalDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z"), CommitSha = "commitSha", Date = DateTimeOffset.Parse("2014-03-06 23:59:59Z") }), }; var assemblyInfoBuilder = new AssemblyInfoBuilder { SemanticVersion = semanticVersion, AssemblyVersioningScheme = avs, }; var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(); Approvals.Verify(assemblyInfoText); var syntaxTree = SyntaxTree.ParseText(assemblyInfoText); var references = new[] { new MetadataFileReference(typeof(object).Assembly.Location), }; var compilation = Compilation.Create("Greeter.dll", new CompilationOptions(OutputKind.NetModule), new[] { syntaxTree }, references); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Info))); }
public void VerifyCreatedCode() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", new ReleaseDate { OriginalCommitSha = "originalCommitSha", OriginalDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z"), CommitSha = "commitSha", Date = DateTimeOffset.Parse("2014-03-06 23:59:59Z") }) }; var assemblyInfoBuilder = new AssemblyInfoBuilder { SemanticVersion = semanticVersion }; var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(); Approvals.Verify(assemblyInfoText); var syntaxTree = SyntaxTree.ParseText(assemblyInfoText); var references = new[] {new MetadataFileReference(typeof(object).Assembly.Location), }; var compilation = Compilation.Create("Greeter.dll", new CompilationOptions(OutputKind.NetModule), new[] { syntaxTree }, references); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Info))); }
static void VerifyAssemblyVersion(AssemblyVersioningScheme avs) { var semanticVersion = new SemanticVersion { Major = 2, Minor = 3, Patch = 4, BuildMetaData = new SemanticVersionBuildMetaData(5, "master", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")), }; var assemblyInfoBuilder = new AssemblyInfoBuilder { CachedVersion = new CachedVersion { SemanticVersion = semanticVersion, MasterReleaseDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z") }, }; var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(new Config { AssemblyVersioningScheme = avs }); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.NetModule)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
public void VerifyCreatedCode() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")) }; var assemblyInfoBuilder = new AssemblyInfoBuilder(); var versionVariables = VariableProvider.GetVariablesFor(semanticVersion, AssemblyVersioningScheme.MajorMinorPatch, VersioningMode.ContinuousDelivery, "ci", false); var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(versionVariables, "Fake"); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); using (var stream = new MemoryStream()) { var emitResult = compilation.Emit(stream); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); stream.Seek(0, SeekOrigin.Begin); var assembly = Assembly.Load(stream.ToArray()); VerifyGitVersionInformationAttribute(assembly, versionVariables); } }
public void VerifyCreatedCode() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")) }; var assemblyInfoBuilder = new AssemblyInfoBuilder { CachedVersion = new CachedVersion { SemanticVersion = semanticVersion, MasterReleaseDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z"), } }; var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(); Approvals.Verify(assemblyInfoText); var syntaxTree = SyntaxTree.ParseText(assemblyInfoText); var references = new[] { new MetadataFileReference(typeof(object).Assembly.Location) }; var compilation = Compilation.Create("Greeter.dll", new CompilationOptions(OutputKind.NetModule), new[] { syntaxTree }, references); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Info))); }
public void VerifyCreatedCode_NoNamespaceConflict() { var semanticVersion = new SemanticVersion { Major = 1, Minor = 2, Patch = 3, PreReleaseTag = "unstable4", BuildMetaData = new SemanticVersionBuildMetaData(5, "feature1", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")) }; var assemblyInfoBuilder = new AssemblyInfoBuilder(); var config = new TestEffectiveConfiguration(); var versionVariables = VariableProvider.GetVariablesFor(semanticVersion, config, false); var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(versionVariables, "Fake.System"); assemblyInfoText.ShouldMatchApproved(); var compilation = CSharpCompilation.Create("Fake.System.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.DynamicallyLinkedLibrary)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
static void VerifyAssemblyVersion(AssemblyVersioningScheme avs) { var semanticVersion = new SemanticVersion { Major = 2, Minor = 3, Patch = 4, PreReleaseTag = "beta.5", BuildMetaData = new SemanticVersionBuildMetaData(6, "master", "commitSha", DateTimeOffset.Parse("2014-03-06 23:59:59Z")), }; var assemblyInfoBuilder = new AssemblyInfoBuilder(); var versionVariables = VariableProvider.GetVariablesFor(semanticVersion, avs, VersioningMode.ContinuousDelivery, "ci", false); var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(versionVariables); Approvals.Verify(assemblyInfoText); var compilation = CSharpCompilation.Create("Fake.dll") .WithOptions(new CSharpCompilationOptions(OutputKind.NetModule)) .AddReferences(MetadataReference.CreateFromFile(typeof(object).Assembly.Location)) .AddSyntaxTrees(CSharpSyntaxTree.ParseText(assemblyInfoText)); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Descriptor))); }
static void VerifyAssemblyVersion(AssemblyVersioningScheme avs) { var semanticVersion = new SemanticVersion { Major = 2, Minor = 3, Patch = 4, BuildMetaData = new SemanticVersionBuildMetaData(5, "master","commitSha",DateTimeOffset.Parse("2014-03-06 23:59:59Z")), }; var assemblyInfoBuilder = new AssemblyInfoBuilder { CachedVersion = new CachedVersion { SemanticVersion = semanticVersion, MasterReleaseDate = DateTimeOffset.Parse("2014-03-01 00:00:01Z") }, }; var assemblyInfoText = assemblyInfoBuilder.GetAssemblyInfoText(new Config { AssemblyVersioningScheme = avs }); Approvals.Verify(assemblyInfoText); var syntaxTree = SyntaxTree.ParseText(assemblyInfoText); var references = new[] { new MetadataFileReference(typeof(object).Assembly.Location)}; var compilation = Compilation.Create("Greeter.dll", new CompilationOptions(OutputKind.NetModule), new[] { syntaxTree }, references); var emitResult = compilation.Emit(new MemoryStream()); Assert.IsTrue(emitResult.Success, string.Join(Environment.NewLine, emitResult.Diagnostics.Select(x => x.Info))); }