public DataCollectionReadOnlyViewModel() { Manager = new Party(); UrdmsUsers = new List<UrdmsUserViewModel>(); NonUrdmsUsers = new List<NonUrdmsUserViewModel>(); FieldsOfResearch = new List<ClassificationBase>(); SocioEconomicObjectives = new List<ClassificationBase>(); }
public void SetUp() { _project = Builder<Project>.CreateNew() .With(o => o.DataManagementPlan = Builder<DataManagementPlan>.CreateNew() .With( q => q.BackupPolicy = Builder<BackupPolicy>.CreateNew().Build()) .And( q => q.DataDocumentation = Builder<DataDocumentation>.CreateNew().Build()) .And( q => q.DataRelationshipDetail = Builder<DataRelationshipDetail>.CreateNew().Build()) .And( q => q.DataRetention = Builder<DataRetention>.CreateNew().Build()) .And( q => q.DataSharing = Builder<DataSharing>.CreateNew().Build()) .And( q => q.DataStorage = Builder<DataStorage>.CreateNew().Build()) .And(q => q.Ethic = Builder<Ethic>.CreateNew().Build()) .And( q => q.ExistingDataDetail = Builder<ExistingDataDetail>.CreateNew().Build()) .And( q => q.Confidentiality = Builder<Confidentiality>.CreateNew().Build()) .And( q => q.NewDataDetail = Builder<NewDataDetail>.CreateNew().Build()) .Build()) .Build(); _project.SocioEconomicObjectives.AddRange( Builder<ProjectSocioEconomicObjective>.CreateListOfSize(4).All().With( q => q.SocioEconomicObjective = Builder<SocioEconomicObjective>.CreateNew().Build()).Build()); _project.FieldsOfResearch.AddRange( Builder<ProjectFieldOfResearch>.CreateListOfSize(5).All().With( q => q.FieldOfResearch = Builder<FieldOfResearch>.CreateNew().Build()).Build()); _project.Funders.AddRange( Builder<ProjectFunder>.CreateListOfSize(1).All().With( q => q.Funder = Pick<Funder>.RandomItemFrom(new[] {Funder.ARC, Funder.NMHRC})).Build()); _project.Parties.AddRange(Builder<ProjectParty>.CreateListOfSize(6) .TheFirst(3) .With(q => q.Party = Builder<Party>.CreateNew() .With(r => r.UserId = null) .Build()) .And(q => q.Relationship = ProjectRelationship.ExternalResearcher) .And(q => q.Role = AccessRole.Visitors) .TheNext(2) .With(q => q.Role = AccessRole.Members) .And(q => q.Party = Builder<Party>.CreateNew() .With(r => r.UserId = null) .Build()) .And(q => q.Relationship = ProjectRelationship.Investigator) .TheNext(1) .With(q => q.Party = Builder<Party>.CreateNew() .With(r => r.UserId = "123456A") .Build()) .And(q => q.Role = AccessRole.Owners) .And(q => q.Relationship = ProjectRelationship.PrincipalInvestigator) .Build()); for (var i = 1; i < 7; i++) _project.Parties[i - 1].Party.Id = i; _funder = _project.Funders.First(); _principalInvestigator = _project.Parties.Single(o => o.Role == AccessRole.Owners).Party; var users = _project.Parties.Where(pp => pp.Party.Id != _principalInvestigator.Id).ToList(); _urdmsUsers = users.Where(o => !string.IsNullOrWhiteSpace(o.Party.UserId)).Select(o => o.Party).ToList(); _nonUrdmsUsers = users.Where(o => string.IsNullOrWhiteSpace(o.Party.UserId)).Select(o => o.Party).ToList(); }