Beispiel #1
0
        public void VerifyThatGoBackToRelationGroupTypeWorks()
        {
            var datatypeMap = new Dictionary <DatatypeDefinition, DatatypeDefinitionMap>();
            var datatyemap  = new DatatypeDefinitionMap(this.datatypedef, this.pt, new Dictionary <EnumValue, EnumerationValueDefinition>());

            datatypeMap.Add(this.datatypedef, datatyemap);

            this.dialogNavigationService.Setup(x => x.NavigateModal(It.IsAny <ParameterTypeMappingDialogViewModel>())).Returns(new ParameterTypeMappingDialogResult(datatypeMap, true));

            var spectypeMap = new Dictionary <SpecificationType, SpecTypeMap>();
            var spectypemap = new SpecTypeMap(this.spectype, null, null, null);

            spectypeMap.Add(this.spectype, spectypemap);
            this.dialogNavigationService.Setup(x => x.NavigateModal(It.IsAny <SpecificationTypeMappingDialogViewModel>())).Returns(new SpecificationTypeMappingDialogResult(spectypeMap, true, true));

            var specobjectTypeMap = new Dictionary <SpecObjectType, SpecObjectTypeMap>();
            var specobjectmap     = new SpecObjectTypeMap(this.specobjecttype, null, null, null, true);

            specobjectTypeMap.Add(this.specobjecttype, specobjectmap);
            this.dialogNavigationService.Setup(x => x.NavigateModal(It.IsAny <SpecObjectTypesMappingDialogViewModel>())).Returns(new RequirementTypeMappingDialogResult(specobjectTypeMap, true, true));

            var relationgroupTypeMap = new Dictionary <RelationGroupType, RelationGroupTypeMap>();

            this.dialogNavigationService.Setup(x => x.NavigateModal(It.IsAny <RelationGroupTypeMappingDialogViewModel>())).Returns(new RelationshipGroupMappingDialogResult(relationgroupTypeMap, true, true));

            var specrelationTypeMap = new Dictionary <SpecRelationType, SpecRelationTypeMap>();

            this.dialogNavigationService.SetupSequence(x => x.NavigateModal(It.IsAny <SpecRelationTypeMappingDialogViewModel>()))
            .Returns(new RelationshipMappingDialogResult(specrelationTypeMap, false, true))
            .Returns(new RelationshipMappingDialogResult(specrelationTypeMap, true, true));

            Assert.DoesNotThrow(() => this.importMappingManager.StartMapping());
        }
Beispiel #2
0
        public void VerifyThatThingFactoryWorks()
        {
            var datatypeMap  = new Dictionary <DatatypeDefinition, DatatypeDefinitionMap>();
            var datatypedef1 = new DatatypeDefinitionMap(this.stringDatadef, this.pt, null);

            datatypeMap.Add(this.stringDatadef, datatypedef1);

            var spectypeMap      = new Dictionary <SpecType, SpecTypeMap>();
            var specificationMap = new SpecTypeMap(this.specificationtype, null, new [] { this.specCategory }, new [] { new AttributeDefinitionMap(this.specAttribute, AttributeDefinitionMapKind.NAME) });
            var requirementMap   = new SpecObjectTypeMap(this.specobjecttype, null, new [] { this.reqCateory }, new[] { new AttributeDefinitionMap(this.reqAttribute, AttributeDefinitionMapKind.FIRST_DEFINITION) }, true);
            var specRelationMap  = new SpecRelationTypeMap(this.specrelationtype, new [] { this.parameterRule }, new [] { this.specRelationCategory }, new[] { new AttributeDefinitionMap(this.specRelationAttribute, AttributeDefinitionMapKind.PARAMETER_VALUE) }, new [] { this.reqRule });
            var relationGroupMap = new RelationGroupTypeMap(this.relationgrouptype, null, new [] { this.relationGroupCategory }, new[] { new AttributeDefinitionMap(this.relationgroupAttribute, AttributeDefinitionMapKind.NONE) }, new [] { this.specRule });

            spectypeMap.Add(this.specificationtype, specificationMap);
            spectypeMap.Add(this.specobjecttype, requirementMap);
            spectypeMap.Add(this.specrelationtype, specRelationMap);
            spectypeMap.Add(this.relationgrouptype, relationGroupMap);

            var factory = new ThingFactory(this.iteration, datatypeMap, spectypeMap, this.domain, this.reqIf.Lang);

            factory.ComputeRequirementThings(this.reqIf);

            Assert.AreEqual(1, factory.RelationGroupMap.Count);
            Assert.AreEqual(1, factory.SpecRelationMap.Count);
            Assert.AreEqual(2, factory.SpecificationMap.Count);
            Assert.IsTrue(factory.SpecificationMap.All(x => x.Value.Requirement.Count == 1));


            var reqSpec1 = factory.SpecificationMap[this.specification1];
            var reqSpec2 = factory.SpecificationMap[this.specification2];
            var req1     = reqSpec1.Requirement.Single();
            var req2     = reqSpec2.Requirement.Single();

            var specificationRelationship = factory.RelationGroupMap.Single().Value;
            var reqRelatinoship           = factory.SpecRelationMap.Single().Value;

            Assert.AreSame(specificationRelationship.Source, reqSpec1);
            Assert.AreSame(specificationRelationship.Target, reqSpec2);
            Assert.AreSame(reqRelatinoship.Source, req1);
            Assert.AreSame(reqRelatinoship.Target, req2);

            Assert.IsNotEmpty(req1.Definition);
            Assert.IsNotEmpty(req2.Definition);

            Assert.AreEqual(reqSpec1.Name, this.specValue1.TheValue);
            Assert.AreEqual(reqSpec2.Name, this.specValue2.TheValue);

            var parameterValue = reqRelatinoship.ParameterValue.Single();

            Assert.AreEqual(parameterValue.Value[0], this.specrelationValue.TheValue);

            //todo to complete
        }