public void ConstructorDoesNotModifyTransformationSessionWhenMetadataValueIsNotSpecified() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => string.Empty; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.IsFalse(transformation.Session.ContainsKey(ParameterName)); } } }
public void ConstructorAddsMetadataValuesForMatchingParametersToTransformationSession() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ExpectedValue = "TestValue"; const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? ExpectedValue : null; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.AreEqual(ExpectedValue, transformation.Session[ParameterName]); } } }
public void ConstructorAddsMetadataValuesForMatchingParametersToTransformationSession() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ExpectedValue = "TestValue"; const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? ExpectedValue : null; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.AreEqual(ExpectedValue, transformation.Session[ParameterName]); } } }
public void ConstructorDoesNotOverrideParameterValuesSuppliedViaTransformationSession() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ExpectedValue = "SessionValue"; const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? "MetadataValue" : null; transformation.Session[ParameterName] = ExpectedValue; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.AreEqual(ExpectedValue, transformation.Session[ParameterName]); } } }
public void ConstructorReportsErrorWhenParameterCannotBeInitializedBecauseSessionIsNull() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ExpectedValue = "TestValue"; const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? ExpectedValue : null; CompilerErrorCollection loggedErrors = null; transformation.Host.LoggedErrors = errors => loggedErrors = errors; transformation.Session = null; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.IsNotNull(loggedErrors); StringAssert.Contains(loggedErrors.Cast <CompilerError>().Single().ErrorText, ParameterName); } } }
public void ConstructorDoesNotOverrideParameterValuesSuppliedViaCallContext() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? "MetadataValue" : null; CallContext.LogicalSetData(ParameterName, "CallContextValue"); try { using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.IsFalse(transformation.Session.ContainsKey(ParameterName)); } } finally { CallContext.FreeNamedDataSlot(ParameterName); } } }
public void ConstructorReportsErrorWhenParameterCannotBeInitializedBecauseSessionIsNull() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ExpectedValue = "TestValue"; const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? ExpectedValue : null; CompilerErrorCollection loggedErrors = null; transformation.Host.LoggedErrors = errors => loggedErrors = errors; transformation.Session = null; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.IsNotNull(loggedErrors); StringAssert.Contains(loggedErrors.Cast<CompilerError>().Single().ErrorText, ParameterName); } } }
public void ConstructorDoesNotOverrideParameterValuesSuppliedViaTransformationSession() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ExpectedValue = "SessionValue"; const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? "MetadataValue" : null; transformation.Session[ParameterName] = ExpectedValue; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.AreEqual(ExpectedValue, transformation.Session[ParameterName]); } } }
public void ConstructorDoesNotOverrideParameterValuesSuppliedViaCallContext() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => metadataName == ParameterName ? "MetadataValue" : null; CallContext.LogicalSetData(ParameterName, "CallContextValue"); try { using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.IsFalse(transformation.Session.ContainsKey(ParameterName)); } } finally { CallContext.FreeNamedDataSlot(ParameterName); } } }
public void ConstructorDoesNotModifyTransformationSessionWhenMetadataValueIsNotSpecified() { using (var transformation = new FakeTransformationWithStringParameter()) { const string ParameterName = "StringParameter"; transformation.Host.GetMetadataValue = (hierarchy, fileName, metadataName) => string.Empty; using (new TransformationContext(transformation, transformation.GenerationEnvironment)) { Assert.IsFalse(transformation.Session.ContainsKey(ParameterName)); } } }