| File: BuildMetadataTests.cs | Web Access |
| Project: src\test\Libraries\Microsoft.Extensions.AmbientMetadata.Build.Tests\Microsoft.Extensions.AmbientMetadata.Build.Tests.csproj (Microsoft.Extensions.AmbientMetadata.Build.Tests) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System; using System.Linq; using System.Reflection; using FluentAssertions; using Xunit; namespace Microsoft.Extensions.AmbientMetadata.Test; public class BuildMetadataTests { [Fact] public void ShouldConstructObject() { var instance = new BuildMetadata(); Assert.NotNull(instance); } [Fact] public void ShouldHaveAllPropertiesNull() { // Arrange var obj = new BuildMetadata(); var properties = obj.GetType().GetProperties().Select(f => f.GetValue(obj)).ToArray(); properties.Should().OnlyContain(x => x == null); } [Fact] public void BuildIdProperty_ShouldSetAndGetCorrectly() { // Arrange var id = Guid.NewGuid().ToString(); var metadata = new BuildMetadata { // Act BuildId = id }; // Assert metadata.BuildId.Should().Be(id); } [Fact] public void BuildNumberProperty_ShouldSetAndGetCorrectly() { // Arrange var metadata = new BuildMetadata { BuildNumber = "v1.2.3" }; // Assert metadata.BuildNumber.Should().Be("v1.2.3"); } [Fact] public void SourceBranchNameProperty_ShouldSetAndGetCorrectly() { // Arrange var metadata = new BuildMetadata { SourceBranchName = "main" }; // Assert metadata.SourceBranchName.Should().Be("main"); } [Fact] public void SourceVersionProperty_ShouldSetAndGetCorrectly() { // Arrange var metadata = new BuildMetadata { SourceVersion = "a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0" }; // Assert metadata.SourceVersion.Should().Be("a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0"); } }