public void SerializationTests_TypeWithWellKnownBaseClass() { Assert.NotNull(this.fixture.SerializationManager.GetSerializer(typeof(DescendantOfWellKnownBaseClass))); Assert.NotNull(this.fixture.SerializationManager.GetSerializer(typeof(ImplementsWellKnownInterface))); var partManager = this.fixture.Services.GetRequiredService <IApplicationPartManager>(); var serializerFeature = new SerializerFeature(); partManager.PopulateFeature(serializerFeature); Assert.Contains(serializerFeature.SerializerTypes, s => s.Target == typeof(DescendantOfWellKnownBaseClass)); Assert.Contains(serializerFeature.SerializerTypes, s => s.Target == typeof(ImplementsWellKnownInterface)); }
public void RuntimeCodeGen_AddsSupportClasses() { var partManager = new ApplicationPartManager(); partManager.AddApplicationPart(typeof(IRuntimeCodeGenGrain).Assembly); partManager.AddFeatureProvider(new AssemblyAttributeFeatureProvider <GrainInterfaceFeature>()); partManager.AddFeatureProvider(new AssemblyAttributeFeatureProvider <GrainClassFeature>()); partManager.AddFeatureProvider(new AssemblyAttributeFeatureProvider <SerializerFeature>()); var interfaceFeature = new GrainInterfaceFeature(); partManager.PopulateFeature(interfaceFeature); Assert.DoesNotContain(interfaceFeature.Interfaces, i => i.InterfaceType == typeof(IRuntimeCodeGenGrain)); var classFeature = new GrainClassFeature(); partManager.PopulateFeature(classFeature); Assert.DoesNotContain(classFeature.Classes, c => c.ClassType == typeof(RuntimeCodeGenGrain)); var serializerFeature = new SerializerFeature(); partManager.PopulateFeature(serializerFeature); Assert.DoesNotContain(serializerFeature.SerializerTypes, s => s.Target == typeof(RuntimeCodeGenPoco)); partManager.AddApplicationPart(typeof(IRuntimeCodeGenGrain).Assembly).WithCodeGeneration(); interfaceFeature = new GrainInterfaceFeature(); partManager.PopulateFeature(interfaceFeature); Assert.Contains(interfaceFeature.Interfaces, i => i.InterfaceType == typeof(IRuntimeCodeGenGrain)); classFeature = new GrainClassFeature(); partManager.PopulateFeature(classFeature); Assert.Contains(classFeature.Classes, c => c.ClassType == typeof(RuntimeCodeGenGrain)); serializerFeature = new SerializerFeature(); partManager.PopulateFeature(serializerFeature); Assert.Contains(serializerFeature.SerializerTypes, s => s.Target == typeof(RuntimeCodeGenPoco)); }