public async Task WhenThePropertyIsAnIBoolProperty_ThenTheEvaluatedValueIsABool() { var properties = PropertiesAvailableStatusFactory.CreateUIPropertyValuePropertiesAvailableStatus(includeEvaluatedValue: true); var mockBoolProperty = new Mock <IBoolProperty>(); mockBoolProperty.Setup(m => m.GetValueAsBoolAsync()).ReturnsAsync(true); var property = mockBoolProperty.Object; var entityRuntime = IEntityRuntimeModelFactory.Create(); var id = new EntityIdentity(key: "A", value: "B"); var configuration = ProjectConfigurationFactory.Create(configuration: "Alpha|Beta|Gamma"); var result = (UIPropertyValueValue)await UIPropertyValueDataProducer.CreateUIPropertyValueValueAsync( entityRuntime, id, configuration, property, properties); Assert.Equal(expected: true, actual: result.EvaluatedValue); }
public async Task WhenPropertyIsAnIEvaluatedProperty_GetUnevaluatedValueAsyncIsCalled() { var properties = PropertiesAvailableStatusFactory.CreateUIPropertyValuePropertiesAvailableStatus(includeUnevaluatedValue: true); var mockEvaluatedProperty = new Mock <IEvaluatedProperty>(); mockEvaluatedProperty.Setup(m => m.GetUnevaluatedValueAsync()).ReturnsAsync("unevaluated value"); var property = mockEvaluatedProperty.Object; var entityRuntime = IEntityRuntimeModelFactory.Create(); var id = new EntityIdentity(key: "A", value: "B"); var configuration = ProjectConfigurationFactory.Create(configuration: "Alpha|Beta|Gamma"); var result = (UIPropertyValueValue)await UIPropertyValueDataProducer.CreateUIPropertyValueValueAsync( entityRuntime, id, configuration, property, properties); Assert.Equal(expected: "unevaluated value", actual: result.UnevaluatedValue); mockEvaluatedProperty.Verify(m => m.GetUnevaluatedValueAsync()); }
public void Handle_WhenMSBuildProjectFullPathPropertyChangedAndMultitargeting_IncludeDimensionValuesInDisplayName(string dimensionNames, string dimensionValues, string implicitDimensionNames, string expected) { var context = IWorkspaceProjectContextMockFactory.Create(); var implicitlyActiveDimensionProvider = IImplicitlyActiveDimensionProviderFactory.ImplementGetImplicitlyActiveDimensions(n => implicitDimensionNames.SplitReturningEmptyIfEmpty('|')); var configuration = ProjectConfigurationFactory.Create(dimensionNames, dimensionValues); var handler = CreateInstance(configuration, implicitlyActiveDimensionProvider, context); var projectChange = IProjectChangeDescriptionFactory.FromJson( @"{ ""Difference"": { ""AnyChanges"": true, ""ChangedProperties"": [ ""MSBuildProjectFullPath"" ] }, ""After"": { ""Properties"": { ""MSBuildProjectFullPath"": ""C:\\Project\\Project.csproj"" } } }"); Handle(handler, projectChange); Assert.Equal(expected, context.DisplayName); }
private static ProjectFilePathAndDisplayNameEvaluationHandler CreateInstance(ProjectConfiguration?configuration = null, IImplicitlyActiveDimensionProvider?implicitlyActiveDimensionProvider = null, IWorkspaceProjectContext?context = null) { var project = ConfiguredProjectFactory.ImplementProjectConfiguration(configuration ?? ProjectConfigurationFactory.Create("Debug|AnyCPU")); implicitlyActiveDimensionProvider ??= IImplicitlyActiveDimensionProviderFactory.Create(); var handler = new ProjectFilePathAndDisplayNameEvaluationHandler(project, implicitlyActiveDimensionProvider); if (context != null) { handler.Initialize(context); } return(handler); }
public void GetDisplayString(string pattern) { Assert.Equal(pattern, ProjectConfigurationFactory.Create(pattern).GetDisplayString()); }
public static ConfiguredProject ImplementProjectConfiguration(string configuration) { return(ImplementProjectConfiguration(ProjectConfigurationFactory.Create(configuration))); }
public static IConfigurationGroup <ProjectConfiguration> CreateFromConfigurationNames(params string[] configurationNames) { IEnumerable <ProjectConfiguration> configurations = configurationNames.Select(name => ProjectConfigurationFactory.Create(name)); return(Create(configurations)); }