Exemple #1
0
        private static async Task AssertRelationExists(SystemRelationDTO expectedRelation, ItSystemUsageDTO usage, bool hasInterface = false, bool hasFrequency = false, bool hasContract = false)
        {
            var response = await SystemRelationHelper.SendGetRelationRequestAsync(usage.Id, expectedRelation.Id);

            var relation = await response.ReadResponseBodyAsKitosApiResponseAsync <SystemRelationDTO>();

            Assert.Equal(expectedRelation.Id, relation.Id);
            Assert.Equal(expectedRelation.Description, relation.Description);
            if (hasInterface)
            {
                AssertEqualNamedEntities(expectedRelation.Interface, relation.Interface);
            }
            else
            {
                Assert.Null(relation.Interface);
            }

            if (hasFrequency)
            {
                AssertEqualNamedEntities(expectedRelation.FrequencyType, relation.FrequencyType);
            }
            else
            {
                Assert.Null(relation.FrequencyType);
            }

            if (hasContract)
            {
                AssertEqualNamedEntities(expectedRelation.Contract, relation.Contract);
            }
            else
            {
                Assert.Null(relation.Contract);
            }
        }
Exemple #2
0
        public HttpResponseMessage PatchRelation([FromBody] SystemRelationDTO relation)
        {
            if (relation == null)
            {
                return(BadRequest("Missing relation data"));
            }

            if (relation.FromUsage == null || relation.ToUsage == null)
            {
                return(BadRequest("FromUsage AND ToUsage MUST be defined"));
            }

            var result = _usageService.ModifyRelation
                         (
                relation.FromUsage.Id,
                relation.Id,
                relation.ToUsage.Id,
                relation.Description,
                relation.Reference,
                relation.Interface?.Id,
                relation.Contract?.Id,
                relation.FrequencyType?.Id
                         );

            return(result.Match(onSuccess: systemRelation => Ok(MapRelation(systemRelation)), onFailure: FromOperationError));
        }
Exemple #3
0
        public static async Task <HttpResponseMessage> SendPatchRelationRequestAsync(SystemRelationDTO input, Cookie login = null)
        {
            login = login ?? await HttpApi.GetCookieAsync(OrganizationRole.GlobalAdmin);

            var url = TestEnvironment.CreateUrl("api/v1/systemrelations");

            return(await HttpApi.PatchWithCookieAsync(url, login, input));
        }
Exemple #4
0
 private SystemRelationDTO PrepareEditedRelation(SystemRelationDTO created, NamedEntityWithEnabledStatusDTO usage, NamedEntityDTO contract, NamedEntityDTO frequency, NamedEntityDTO interfaceType)
 {
     return(new SystemRelationDTO(
                created.Id,
                created.Uuid,
                created.FromUsage,
                usage,
                interfaceType,
                contract,     // contract
                frequency,    // frquencytype
                A <string>(), // description
                A <string>()  // reference
                ));
 }