protected override void Act() { var profileDefinition = XElement.Parse( @" <Profile name='Profile1'> <Resource name='TestEntity1' logicalSchema='SchemaName'> <ReadContentType memberSelection='IncludeOnly'> <Property name='StringProperty1' /> </ReadContentType> <WriteContentType memberSelection='IncludeOnly'> <Property name='DateProperty1' /> </WriteContentType> </Resource> <Resource name='TestEntity2' logicalSchema='SchemaName'> <ReadContentType memberSelection='IncludeOnly'> <Property name='StringProperty1' /> </ReadContentType> </Resource> <Resource name='TestEntity3' logicalSchema='SchemaName'> <WriteContentType memberSelection='IncludeOnly'> <Property name='DateProperty1' /> </WriteContentType> </Resource> </Profile>"); _actualProfileResourceModel = new ProfileResourceModel(GetTestResourceModel(), profileDefinition); }
protected override void Arrange() { _testProfileResourceNamesProvider = new TestProfileResourceNamesProvider(); var studentProgramAssociation = _resourceModelProvider.GetResourceModel() .GetResourceByFullName( new FullName( EdFiConventions .PhysicalSchemaName, "StudentProgramAssociation")); var studentSpecialEducationProgramAssociation = _resourceModelProvider .GetResourceModel() .GetResourceByFullName( new FullName( EdFiConventions .PhysicalSchemaName, "StudentSpecialEducationProgramAssociation")); _expectedFilteredResources = new[] { new OpenApiMetadataResource(studentProgramAssociation) { Name = "studentProgramAssociation", Readable = true }, new OpenApiMetadataResource(studentProgramAssociation) { Name = "studentProgramAssociation", Readable = true, ContextualResource = studentSpecialEducationProgramAssociation }, new OpenApiMetadataResource(studentProgramAssociation) { Name = "studentProgramAssociation_StudentSpecialEducationProgramAssociation", Readable = true, Writable = true }, new OpenApiMetadataResource(studentSpecialEducationProgramAssociation) { Name = "studentSpecialEducationProgramAssociation", Readable = true, Writable = true } }; _schemaNameMapProviderStub = Stub <ISchemaNameMapProvider>(); var profileResourceModel = new ProfileResourceModel( _resourceModelProvider.GetResourceModel(), _testProfileResourceNamesProvider.GetProfileDefinition("ProfileName")); _openApiMetadataDocumentContext = new OpenApiMetadataDocumentContext( _resourceModelProvider.GetResourceModel()) { ProfileContext = new OpenApiMetadataProfileContext { ProfileName = "ProfileName", ProfileResourceModel = profileResourceModel } }; }
protected override void Arrange() { _swaggerDocumentContext = new SwaggerDocumentContext( ResourceModelProvider.GetResourceModel()) { ProfileContext = new SwaggerProfileContext { ProfileName = "Test-ParentNonAbstractBaseClass-ExcludeOnly" }, RenderType = RenderType.GeneralizedExtensions }; string profileDefinition = @"<Profile name='Test-ParentNonAbstractBaseClass-ExcludeOnly'> <Resource name='StudentSpecialEducationProgramAssociation'> <ReadContentType memberSelection='ExcludeOnly'> <Property name='SpecialEducationHoursPerWeek'/> </ReadContentType> <WriteContentType memberSelection='IncludeAll'/> </Resource> <Resource name='StudentProgramAssociation'> <ReadContentType memberSelection='IncludeOnly'/> </Resource> </Profile>"; var profileResourceModel = new ProfileResourceModel( ResourceModelProvider.GetResourceModel(), XElement.Parse(profileDefinition)); var readableResourceModel = profileResourceModel.ResourceByName.Values.Where(r => r.Readable != null); var writableResourceModel = profileResourceModel.ResourceByName.Values.Where(r => r.Writable != null); _swaggerResources = readableResourceModel .Select( r => new SwaggerResource(r.Readable) { Name = $"{CompositeTermInflector.MakeSingular(r.Readable.Name)}_{ContentTypeUsage.Readable}" .ToCamelCase(), Readable = true, IsProfileResource = true }) .Concat( writableResourceModel.Select( r => new SwaggerResource(r.Writable) { Name = $"{CompositeTermInflector.MakeSingular(r.Writable.Name)}_{ContentTypeUsage.Writable}" .ToCamelCase(), Writable = true, IsProfileResource = true } )) .ToList(); }
protected override void Arrange() { _openApiMetadataDocumentContext = new OpenApiMetadataDocumentContext(ResourceModelProvider.GetResourceModel()) { ProfileContext = new OpenApiMetadataProfileContext() }; string profileDefinition = @"<Profile name='Test-ParentNonAbstractBaseClass-ExcludeOnly'> <Resource name='StudentSpecialEducationProgramAssociation'> <ReadContentType memberSelection='ExcludeOnly'> <Property name='SpecialEducationHoursPerWeek'/> </ReadContentType> <WriteContentType memberSelection='IncludeAll'/> </Resource> <Resource name='Staff'> <ReadContentType memberSelection='IncludeOnly'> <Extension name='GrandBend' memberSelection='IncludeOnly' logicalSchema='GrandBend'> <Property name='Tenured'/> </Extension> </ReadContentType> <WriteContentType memberSelection='IncludeAll' /> </Resource> <Resource name='StudentProgramAssociation'> <ReadContentType memberSelection='IncludeOnly'/> </Resource> </Profile>"; var profileResourceModel = new ProfileResourceModel( ResourceModelProvider.GetResourceModel(), XElement.Parse(profileDefinition)); var readableResourceModel = profileResourceModel.ResourceByName.Values.Where(r => r.Readable != null); var writableResourceModel = profileResourceModel.ResourceByName.Values.Where(r => r.Writable != null); var edFiSchemaPrefix = "edFi"; _openApiMetadataResources = readableResourceModel .Select( r => new OpenApiMetadataResource(r.Readable) { Name = $"{edFiSchemaPrefix}_{CompositeTermInflector.MakeSingular(r.Readable.Name)}_{ContentTypeUsage.Readable}" .ToCamelCase(), Readable = true, IsProfileResource = true }).Concat( writableResourceModel.Select( r => new OpenApiMetadataResource(r.Writable) { Name = $"{edFiSchemaPrefix}_{CompositeTermInflector.MakeSingular(r.Writable.Name)}_{ContentTypeUsage.Writable}" .ToCamelCase(), Writable = true, IsProfileResource = true })).ToList(); }
protected override void Act() { _actualProfileResourceModel = new ProfileResourceModel(_resourceModel, _profileDefinition); _student = _actualProfileResourceModel.GetResourceByName(new FullName("edfi", "Student")); }
protected override void Act() { _actualProfile1ResourceModel = TestSubject.GetProfileResourceModel("Profile1"); _actualProfile2ResourceModel = TestSubject.GetProfileResourceModel("Profile2"); var ignored = TestSubject.GetProfileResourceModel("ProfileX"); }
protected override void Act() { _actualProfile1ResourceModel = profileresourceModelProvider.GetProfileResourceModel("Profile1"); _actualProfile2ResourceModel = profileresourceModelProvider.GetProfileResourceModel("Profile2"); var ignored = profileresourceModelProvider.GetProfileResourceModel("ProfileX"); }