Пример #1
0
        public void VerifyGetOwnerThrowException()
        {
            var thing = new IdCorrespondence(Guid.NewGuid(), null, null);

            Assert.Throws <ContainmentException>(() =>
            {
                Console.WriteLine(thing.Owner);
            });
        }
        public void VerifyGetOwner()
        {
            var thing = new IdCorrespondence(Guid.NewGuid(), null, null);
            var externalIdentifierMap = new ExternalIdentifierMap(Guid.NewGuid(), null, null);

            externalIdentifierMap.Owner = new DomainOfExpertise(Guid.NewGuid(), null, null);

            thing.Container = externalIdentifierMap;

            Assert.IsTrue(ReferenceEquals(thing.Owner, externalIdentifierMap.Owner));
        }
        public void VerifyUpdateExternalIdentifierMap_RemoveUnused()
        {
            var correspondanceA = new IdCorrespondence()
            {
                ExternalId = "A"
            };
            var correspondanceB = new IdCorrespondence()
            {
                ExternalId = "B"
            };

            this.controller.SetExternalIdentifierMap(new ExternalIdentifierMap()
            {
                Correspondence =
                {
                    new IdCorrespondence()
                    {
                        ExternalId = "-1"
                    },
                    correspondanceA,
                    correspondanceB,
                },
                Container = this.iteration
            });

            this.controller.PreviousIdCorrespondences.AddRange(new[]
            {
                correspondanceA,
                correspondanceB
            });

            this.controller.UsedIdCorrespondences.AddRange(new[]
            {
                correspondanceB
            });

            Assert.DoesNotThrow(() => this.controller.MergeExternalIdentifierMap());

            Assert.AreEqual(2, this.controller.ExternalIdentifierMap.Correspondence.Count());

            Assert.IsFalse(this.controller.ExternalIdentifierMap.Correspondence.Contains(correspondanceA));
            Assert.IsTrue(this.controller.ExternalIdentifierMap.Correspondence.Contains(correspondanceB));
            Assert.IsNull(this.controller.ExternalIdentifierMap.Correspondence.SingleOrDefault(x => x.ExternalId == "A"));
            Assert.IsNotNull(this.controller.ExternalIdentifierMap.Correspondence.SingleOrDefault(x => x.ExternalId == "B"));

            Assert.IsEmpty(this.controller.IdCorrespondences);
            Assert.IsEmpty(this.controller.UsedIdCorrespondences);
            Assert.IsEmpty(this.controller.PreviousIdCorrespondences);
        }
        /// <summary>
        /// Serialize the <see cref="IdCorrespondence"/>
        /// </summary>
        /// <param name="idCorrespondence">The <see cref="IdCorrespondence"/> to serialize</param>
        /// <returns>The <see cref="JObject"/></returns>
        private JObject Serialize(IdCorrespondence idCorrespondence)
        {
            var jsonObject = new JObject();

            jsonObject.Add("classKind", this.PropertySerializerMap["classKind"](Enum.GetName(typeof(CDP4Common.CommonData.ClassKind), idCorrespondence.ClassKind)));
            jsonObject.Add("excludedDomain", this.PropertySerializerMap["excludedDomain"](idCorrespondence.ExcludedDomain.OrderBy(x => x, this.guidComparer)));
            jsonObject.Add("excludedPerson", this.PropertySerializerMap["excludedPerson"](idCorrespondence.ExcludedPerson.OrderBy(x => x, this.guidComparer)));
            jsonObject.Add("externalId", this.PropertySerializerMap["externalId"](idCorrespondence.ExternalId));
            jsonObject.Add("iid", this.PropertySerializerMap["iid"](idCorrespondence.Iid));
            jsonObject.Add("internalThing", this.PropertySerializerMap["internalThing"](idCorrespondence.InternalThing));
            jsonObject.Add("modifiedOn", this.PropertySerializerMap["modifiedOn"](idCorrespondence.ModifiedOn));
            jsonObject.Add("revisionNumber", this.PropertySerializerMap["revisionNumber"](idCorrespondence.RevisionNumber));
            jsonObject.Add("thingPreference", this.PropertySerializerMap["thingPreference"](idCorrespondence.ThingPreference));
            return(jsonObject);
        }
Пример #5
0
 /// <summary>
 /// Add an Correspondence row view model to the list of <see cref="Correspondence"/>
 /// </summary>
 /// <param name="correspondence">
 /// The <see cref="Correspondence"/> that is to be added
 /// </param>
 private IdCorrespondenceRowViewModel AddCorrespondenceRowViewModel(IdCorrespondence correspondence)
 {
     return(new IdCorrespondenceRowViewModel(correspondence, this.Session, this));
 }