private AsSession SelectSession(bool empty) { if (sessionList == null) { CreateSessions(); sessionList = sessionListAccesor.SelectListT(manager, null) .Where(x => !x.idfsCampaignType.HasValue && x.strDisease == null /*String.IsNullOrEmpty(x.strDisease)*/); } long?sessionId = null; AsSession result = null; foreach (var sl in sessionList.Where(x => !x.idfsCampaignType.HasValue).OrderByDescending(s => s.strCampaignName)) { sessionId = sl.idfMonitoringSession; result = sessionAccessor.SelectByKey(manager, sessionId); if ((result.Diseases.Count == 0 && empty) || (result.Diseases.Count > 0 && !empty)) { break; } } return(result); }
public void Campaign_RemoveSessions() { campaign.strCampaignName = "Thursday"; campaign.idfsCampaignStatus = (long)AsCampaignStatus.Open; campaign.CampaignType = campaign.CampaignTypeLookup[1]; session = SelectSession(true); long idfsession = session.idfMonitoringSession; if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } Assert.AreEqual(1, campaign.Sessions.Count); campaignAccessor.Post(manager, campaign); campaign = campaignAccessor.SelectByKey(manager, campaign.idfCampaign); Assert.AreEqual(1, campaign.Sessions.Count); campaign.Sessions[0].MarkToDelete(); campaignAccessor.Post(manager, campaign); campaign = campaignAccessor.SelectByKey(manager, campaign.idfCampaign); Assert.AreEqual(0, campaign.Sessions.Count); session = sessionAccessor.SelectByKey(manager, idfsession); Assert.IsNull(session.idfCampaign); }
public override void TestCleanup() { campaignAccessor = null; campaign = null; sessionAccessor = null; session = null; base.TestCleanup(); }
public override void MyTestInitialize() { base.MyTestInitialize(); campaignAccessor = AsCampaign.Accessor.Instance(null); campaign = campaignAccessor.CreateNewT(manager, null); Assert.IsNotNull(campaign); sessionAccessor = AsSession.Accessor.Instance(null); session = sessionAccessor.CreateNewT(manager, null); Assert.IsNotNull(session); sessionListAccesor = AsSessionListItem.Accessor.Instance(null); }
private void CreateSessions() { AsSession assession = null; for (int i = 0; i < 10; i++) { assession = sessionAccessor.CreateNewT(manager, null); assession.Region = assession.RegionLookup[1]; if (i % 2 == 0) { AsSessionDisease disease = AsSessionDisease.Accessor.Instance(null).CreateNewT(manager, assession); disease.Diagnosis = disease.DiagnosisLookup[i + 1]; disease.SpeciesType = disease.SpeciesTypeLookup[i + 1]; disease.idfMonitoringSession = assession.idfMonitoringSession; assession.Diseases.Add(disease); } sessionAccessor.Post(manager, assession); } }
private AsSession SessionWithCampaign() { AsCampaign campaign = campaignAccessor.CreateNewT(manager, null); campaign.strCampaignName = "New Campaign"; campaign.idfsCampaignStatus = (long)AsCampaignStatus.Open; campaign.CampaignType = campaign.CampaignTypeLookup[1]; campaign.Validation += campaign_validation; campaignAccessor.Post(manager, campaign); campaign.Validation -= campaign_validation; AsSession result = sessionAccessor.CreateNewT(manager, null); result.idfCampaign = campaign.idfCampaign; result.Region = result.RegionLookup[1]; sessionAccessor.Post(manager, result); return(result); }
public void Campaign_SelectAndAddEmptySession() { campaign.strCampaignName = "Thursday"; campaign.idfsCampaignStatus = (long)AsCampaignStatus.Open; campaign.CampaignType = campaign.CampaignTypeLookup[1]; session = SelectSession(true); if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } Assert.AreEqual(1, campaign.Sessions.Count); campaignAccessor.Post(manager, campaign); campaign = campaignAccessor.SelectByKey(manager, campaign.idfCampaign); Assert.AreEqual(1, campaign.Sessions.Count); }
public void Campaign_PostWithNewSession() { campaign.strCampaignName = "New Campaign"; campaign.idfsCampaignStatus = (long)AsCampaignStatus.Open; campaign.CampaignType = campaign.CampaignTypeLookup[1]; session.Region = session.RegionLookup[1]; sessionAccessor.Post(manager, session); if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session); } Assert.AreEqual(1, campaign.Sessions.Count); campaignAccessor.Post(manager, campaign); campaign = campaignAccessor.SelectByKey(manager, campaign.idfCampaign); Assert.AreEqual(1, campaign.Sessions.Count); session = sessionAccessor.SelectByKey(manager, campaign.Sessions[0].idfMonitoringSession); Assert.AreEqual(session.strCampaignName, campaign.strCampaignName); }
public void Campaign_SelectAndAddSessionWithDiseases() { campaign.strCampaignName = "Thursday"; campaign.idfsCampaignStatus = (long)AsCampaignStatus.Open; campaign.datCampaignDateStart = DateTime.Today.AddMonths(-2); campaign.datCampaignDateEnd = DateTime.Today.AddMonths(2); session = SelectSession(false); try { if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } } catch (ValidationModelException e) { Assert.AreEqual("errNotMatchSessionDiagnosis", e.MessageId); } Assert.AreEqual(0, campaign.Sessions.Count); session = SelectSession(true); session.datStartDate = DateTime.Today.AddMonths(-3); try { if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } } catch (ValidationModelException e) { Assert.AreEqual("msgCampaignSessionDatesConflict", e.MessageId); } Assert.AreEqual(0, campaign.Sessions.Count); session.datStartDate = campaign.datCampaignDateStart; session.datEndDate = DateTime.Today.AddMonths(4); try { if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } } catch (ValidationModelException e) { Assert.AreEqual("msgCampaignSessionDatesConflict", e.MessageId); } Assert.AreEqual(0, campaign.Sessions.Count); session.datEndDate = DateTime.Today.AddMonths(1); if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } Assert.AreEqual(1, campaign.Sessions.Count); session = SessionWithCampaign(); try { if (campaign.ValidateSessionAssignment(session)) { AsCampaign.AssignCampaignToSession(campaign, session.idfMonitoringSession); } } catch (ValidationModelException e) { Assert.AreEqual("msgASSessionAlreadyBelongsToCampaign", e.MessageId); } Assert.AreEqual(1, campaign.Sessions.Count); campaignAccessor.Post(manager, campaign); }