public void OptionalImportsOfExportReferenceTypesAreBoundToDefaultWhenNotSatisfied() { var container = ContainerFactory.Create(); var importer = new OptionalExport(); CompositionBatch batch = new CompositionBatch(); batch.AddPart(importer); container.Compose(batch); Assert.Equal(1, importer.ReferenceTypeSetCount); Assert.Null(importer.ReferenceType); }
public void OptionalImportsOfExportReferenceTypesAreReboundToDefaultWhenExportIsRemoved() { var container = ContainerFactory.Create(); var importer = new OptionalExport(); CompositionBatch batch = new CompositionBatch(); batch.AddPart(importer); var key = batch.AddExportedValue("ReferenceType", "Bar"); container.Compose(batch); Assert.Equal(1, importer.ReferenceTypeSetCount); Assert.Equal("Bar", importer.ReferenceType.Value); batch = new CompositionBatch(); batch.RemovePart(key); container.Compose(batch); Assert.Equal(2, importer.ReferenceTypeSetCount); Assert.Null(importer.ReferenceType); }
public void OptionalImportsOfExportNullableValueTypesAreReboundToDefaultWhenExportIsRemoved() { var container = ContainerFactory.Create(); var importer = new OptionalExport(); CompositionBatch batch = new CompositionBatch(); batch.AddPart(importer); var key = batch.AddExportedValue <int?>("NullableValueType", 10); container.Compose(batch); Assert.AreEqual(1, importer.NullableValueTypeSetCount); Assert.AreEqual(10, importer.NullableValueType.Value); batch = new CompositionBatch(); batch.RemovePart(key); container.Compose(batch); Assert.AreEqual(2, importer.NullableValueTypeSetCount); Assert.IsNull(importer.NullableValueType); }
public void OptionalImportsOfExportReferenceTypesAreReboundToDefaultWhenExportIsRemoved() { var container = ContainerFactory.Create(); var importer = new OptionalExport(); CompositionBatch batch = new CompositionBatch(); batch.AddPart(importer); var key = batch.AddExportedValue("ReferenceType", "Bar"); container.Compose(batch); Assert.AreEqual(1, importer.ReferenceTypeSetCount); Assert.AreEqual("Bar", importer.ReferenceType.Value); batch = new CompositionBatch(); batch.RemovePart(key); container.Compose(batch); Assert.AreEqual(2, importer.ReferenceTypeSetCount); Assert.IsNull(importer.ReferenceType); }
public void OptionalImportsOfExportReferenceTypesAreBoundToDefaultWhenNotSatisfied() { var container = ContainerFactory.Create(); var importer = new OptionalExport(); CompositionBatch batch = new CompositionBatch(); batch.AddPart(importer); container.Compose(batch); Assert.AreEqual(1, importer.ReferenceTypeSetCount); Assert.IsNull(importer.ReferenceType); }