public async Task Verify_that_person_can_be_Posted() { var cdpServicesDal = new CdpServicesDal(); var dtos = await cdpServicesDal.Open(this.credentials, this.cancelationTokenSource.Token); var siteDirectory = (CDP4Common.DTO.SiteDirectory)dtos.Single(x => x.ClassKind == ClassKind.SiteDirectory); var context = siteDirectory.Route; var operationContainer = new OperationContainer(context, siteDirectory.RevisionNumber); var person = new CDP4Common.DTO.Person(Guid.NewGuid(), 1); person.ShortName = Guid.NewGuid().ToString(); person.Surname = Guid.NewGuid().ToString(); person.GivenName = Guid.NewGuid().ToString(); person.AddContainer(ClassKind.SiteDirectory, siteDirectory.Iid); var operation1 = new Operation(null, person, OperationKind.Create); operationContainer.AddOperation(operation1); var siteDirectoryClone = siteDirectory.DeepClone <CDP4Common.DTO.SiteDirectory>(); siteDirectoryClone.Person.Add(person.Iid); var operation2 = new Operation(siteDirectory, siteDirectoryClone, OperationKind.Update); operationContainer.AddOperation(operation2); var result = await cdpServicesDal.Write(operationContainer); var resultPerson = (CDP4Common.DTO.Person)result.Single(x => x.Iid == person.Iid); Assert.NotNull(resultPerson); }
public void SetUp() { RxApp.MainThreadScheduler = Scheduler.CurrentThread; this.cache = new List <Thing>(); this.dalOutputs = new List <CDP4Common.DTO.Thing>(); var sitedirectory = new CDP4Common.DTO.SiteDirectory(Guid.NewGuid(), 22); var person = new CDP4Common.DTO.Person(Guid.NewGuid(), 22) { ShortName = "John" }; sitedirectory.Person.Add(person.Iid); this.dalOutputs.Add(sitedirectory); this.dalOutputs.Add(person); this.tokenSource = new CancellationTokenSource(); CDPMessageBus.Current.Listen <ObjectChangedEvent>(typeof(SiteDirectory)).Subscribe(x => this.OnEvent(x.ChangedThing)); this.mockedDal = new Mock <IDal>(); this.mockedDal.Setup(x => x.Close()); this.uri = "http://www.rheagroup.com/"; var credentials = new Credentials("John", "Doe", new Uri(this.uri)); var session = new Session(this.mockedDal.Object, credentials); this.sessionViewModel = new SessionViewModel(session); var openTaskCompletionSource = new TaskCompletionSource <IEnumerable <CDP4Common.DTO.Thing> >(); openTaskCompletionSource.SetResult(this.dalOutputs); this.mockedDal.Setup(x => x.Open(It.IsAny <Credentials>(), It.IsAny <CancellationToken>())).Returns(openTaskCompletionSource.Task); }
public void SetUp() { this.uri = new Uri("http://www.rheagroup.com"); this.cache = new List <Thing>(); this.testInput = new List <CDP4Common.DTO.Thing>(); this.person = new CDP4Common.DTO.Person(Guid.NewGuid(), 0) { Surname = "test", Password = "******", IsActive = true }; this.person2 = new CDP4Common.DTO.Person(Guid.NewGuid(), 0) { Surname = "test2", Password = "******", IsActive = true }; var phone1 = new CDP4Common.DTO.TelephoneNumber(Guid.NewGuid(), 0) { Value = "123" }; phone1.VcardType.Add(VcardTelephoneNumberKind.HOME); var phone2 = new CDP4Common.DTO.TelephoneNumber(Guid.NewGuid(), 0) { Value = "456" }; phone2.VcardType.Add(VcardTelephoneNumberKind.WORK); var phone3 = new CDP4Common.DTO.TelephoneNumber(Guid.NewGuid(), 0) { Value = "789" }; phone3.VcardType.Add(VcardTelephoneNumberKind.FAX); this.linearConversionUnitType = new CDP4Common.DTO.LinearConversionUnit(Guid.NewGuid(), 0); this.prefixedUnitType = new CDP4Common.DTO.PrefixedUnit(Guid.NewGuid(), 0); this.derivedUnitType = new CDP4Common.DTO.DerivedUnit(Guid.NewGuid(), 0); this.simpleUnitUnitType = new CDP4Common.DTO.SimpleUnit(Guid.NewGuid(), 0); this.person.TelephoneNumber.Add(phone1.Iid); this.person.TelephoneNumber.Add(phone2.Iid); this.person.TelephoneNumber.Add(phone3.Iid); this.testInput.Add(new SiteDirectory(Guid.NewGuid(), 1)); this.testInput.Add(this.person); this.testInput.Add(this.person2); this.testInput.Add(phone1); this.testInput.Add(phone2); this.testInput.Add(phone3); this.testInput.Add(this.linearConversionUnitType); this.testInput.Add(this.prefixedUnitType); this.testInput.Add(this.derivedUnitType); this.testInput.Add(this.simpleUnitUnitType); }
public async Task Verify_that_person_can_be_Posted() { var uri = new Uri("http://ocdt-dev.rheagroup.com"); var credentials = new Credentials("admin", "pass", uri); var wspdal = new WspDal(); var dtos = await wspdal.Open(credentials, this.cancelationTokenSource.Token); var siteDirectory = (CDP4Common.DTO.SiteDirectory)dtos.Single(x => x.ClassKind == ClassKind.SiteDirectory); var context = siteDirectory.Route; var operationContainer = new OperationContainer(context, siteDirectory.RevisionNumber); var person = new CDP4Common.DTO.Person(Guid.NewGuid(), 1); person.ShortName = Guid.NewGuid().ToString(); person.Surname = Guid.NewGuid().ToString(); person.GivenName = Guid.NewGuid().ToString(); person.AddContainer(ClassKind.SiteDirectory, Guid.Parse("eb77f3e1-a0f3-412d-8ed6-b8ce881c0145")); var operation1 = new Operation(null, person, OperationKind.Create); operationContainer.AddOperation(operation1); var siteDirectoryClone = siteDirectory.DeepClone <CDP4Common.DTO.SiteDirectory>(); siteDirectoryClone.Person.Add(person.Iid); var operation2 = new Operation(siteDirectory, siteDirectoryClone, OperationKind.Update); operationContainer.AddOperation(operation2); var result = await wspdal.Write(operationContainer); var resultPerson = (CDP4Common.DTO.Person)result.Single(x => x.Iid == person.Iid); Assert.NotNull(resultPerson); }
/// <summary> /// Instantiate and deserialize the properties of a <paramref name="Person"/> /// </summary> /// <param name="jObject">The <see cref="JObject"/> containing the data</param> /// <returns>The <see cref="Person"/> to instantiate</returns> public static CDP4Common.DTO.Person FromJsonObject(JObject jObject) { var iid = jObject["iid"].ToObject <Guid>(); var revisionNumber = jObject["revisionNumber"].IsNullOrEmpty() ? 0 : jObject["revisionNumber"].ToObject <int>(); var person = new CDP4Common.DTO.Person(iid, revisionNumber); if (!jObject["defaultDomain"].IsNullOrEmpty()) { person.DefaultDomain = jObject["defaultDomain"].ToObject <Guid?>(); } if (!jObject["defaultEmailAddress"].IsNullOrEmpty()) { person.DefaultEmailAddress = jObject["defaultEmailAddress"].ToObject <Guid?>(); } if (!jObject["defaultTelephoneNumber"].IsNullOrEmpty()) { person.DefaultTelephoneNumber = jObject["defaultTelephoneNumber"].ToObject <Guid?>(); } if (!jObject["emailAddress"].IsNullOrEmpty()) { person.EmailAddress.AddRange(jObject["emailAddress"].ToObject <IEnumerable <Guid> >()); } if (!jObject["excludedDomain"].IsNullOrEmpty()) { person.ExcludedDomain.AddRange(jObject["excludedDomain"].ToObject <IEnumerable <Guid> >()); } if (!jObject["excludedPerson"].IsNullOrEmpty()) { person.ExcludedPerson.AddRange(jObject["excludedPerson"].ToObject <IEnumerable <Guid> >()); } if (!jObject["givenName"].IsNullOrEmpty()) { person.GivenName = jObject["givenName"].ToObject <string>(); } if (!jObject["isActive"].IsNullOrEmpty()) { person.IsActive = jObject["isActive"].ToObject <bool>(); } if (!jObject["isDeprecated"].IsNullOrEmpty()) { person.IsDeprecated = jObject["isDeprecated"].ToObject <bool>(); } if (!jObject["modifiedOn"].IsNullOrEmpty()) { person.ModifiedOn = jObject["modifiedOn"].ToObject <DateTime>(); } if (!jObject["organization"].IsNullOrEmpty()) { person.Organization = jObject["organization"].ToObject <Guid?>(); } if (!jObject["organizationalUnit"].IsNullOrEmpty()) { person.OrganizationalUnit = jObject["organizationalUnit"].ToObject <string>(); } if (!jObject["password"].IsNullOrEmpty()) { person.Password = jObject["password"].ToObject <string>(); } if (!jObject["role"].IsNullOrEmpty()) { person.Role = jObject["role"].ToObject <Guid?>(); } if (!jObject["shortName"].IsNullOrEmpty()) { person.ShortName = jObject["shortName"].ToObject <string>(); } if (!jObject["surname"].IsNullOrEmpty()) { person.Surname = jObject["surname"].ToObject <string>(); } if (!jObject["telephoneNumber"].IsNullOrEmpty()) { person.TelephoneNumber.AddRange(jObject["telephoneNumber"].ToObject <IEnumerable <Guid> >()); } if (!jObject["thingPreference"].IsNullOrEmpty()) { person.ThingPreference = jObject["thingPreference"].ToObject <string>(); } if (!jObject["userPreference"].IsNullOrEmpty()) { person.UserPreference.AddRange(jObject["userPreference"].ToObject <IEnumerable <Guid> >()); } return(person); }