public IHttpActionResult Delete([FromBody] PolSourceObservation polSourceObservation, [FromUri] string lang = "en") { using (CSSPDBContext db = new CSSPDBContext(DatabaseType)) { PolSourceObservationService polSourceObservationService = new PolSourceObservationService(new Query() { Language = (lang == "fr" ? LanguageEnum.fr : LanguageEnum.en) }, db, ContactID); if (!polSourceObservationService.Delete(polSourceObservation)) { return(BadRequest(String.Join("|||", polSourceObservation.ValidationResults))); } else { polSourceObservation.ValidationResults = null; return(Ok(polSourceObservation)); } } }
// Fill public string FillPolSourceObservation(PolSourceObservation polSourceObservation, PolSourceObservationModel polSourceObservationModel, ContactOK contactOK) { polSourceObservation.DBCommand = (int)polSourceObservationModel.DBCommand; polSourceObservation.PolSourceSiteID = polSourceObservationModel.PolSourceSiteID; polSourceObservation.ObservationDate_Local = polSourceObservationModel.ObservationDate_Local; polSourceObservation.Observation_ToBeDeleted = polSourceObservationModel.Observation_ToBeDeleted; polSourceObservation.ContactTVItemID = polSourceObservationModel.ContactTVItemID; polSourceObservation.DesktopReviewed = polSourceObservationModel.DesktopReviewed; polSourceObservation.LastUpdateDate_UTC = DateTime.UtcNow; if (contactOK == null) { polSourceObservation.LastUpdateContactTVItemID = 2; } else { polSourceObservation.LastUpdateContactTVItemID = contactOK.ContactTVItemID; } return(""); }
public void GetPolSourceObservationList_Test() { foreach (CultureInfo culture in AllowableCulture) { ChangeCulture(culture); using (CSSPDBContext dbTestDB = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB)) { PolSourceObservationService polSourceObservationService = new PolSourceObservationService(new Query() { Lang = culture.TwoLetterISOLanguageName }, dbTestDB, ContactID); PolSourceObservation polSourceObservation = (from c in dbTestDB.PolSourceObservations select c).FirstOrDefault(); Assert.IsNotNull(polSourceObservation); List <PolSourceObservation> polSourceObservationDirectQueryList = new List <PolSourceObservation>(); polSourceObservationDirectQueryList = (from c in dbTestDB.PolSourceObservations select c).Take(200).ToList(); foreach (string extra in new List <string>() { null, "A", "B", "C", "D", "E" }) { polSourceObservationService.Query.Extra = extra; if (string.IsNullOrWhiteSpace(extra)) { List <PolSourceObservation> polSourceObservationList = new List <PolSourceObservation>(); polSourceObservationList = polSourceObservationService.GetPolSourceObservationList().ToList(); CheckPolSourceObservationFields(polSourceObservationList); } else { //Assert.AreEqual(true, false); } } } } }
/// <summary> /// Validate function for all PolSourceObservationIssueService commands /// </summary> /// <param name="validationContext">System.ComponentModel.DataAnnotations.ValidationContext (Describes the context in which a validation check is performed.)</param> /// <param name="actionDBType">[ActionDBTypeEnum] (CSSPEnums.ActionDBTypeEnum.html) action type to validate</param> /// <returns>IEnumerable of ValidationResult (Where ValidationResult is a container for the results of a validation request.)</returns> private IEnumerable <ValidationResult> Validate(ValidationContext validationContext, ActionDBTypeEnum actionDBType) { string retStr = ""; Enums enums = new Enums(LanguageRequest); PolSourceObservationIssue polSourceObservationIssue = validationContext.ObjectInstance as PolSourceObservationIssue; polSourceObservationIssue.HasErrors = false; if (actionDBType == ActionDBTypeEnum.Update || actionDBType == ActionDBTypeEnum.Delete) { if (polSourceObservationIssue.PolSourceObservationIssueID == 0) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "PolSourceObservationIssueID"), new[] { "PolSourceObservationIssueID" })); } if (!(from c in db.PolSourceObservationIssues select c).Where(c => c.PolSourceObservationIssueID == polSourceObservationIssue.PolSourceObservationIssueID).Any()) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "PolSourceObservationIssue", "PolSourceObservationIssueID", polSourceObservationIssue.PolSourceObservationIssueID.ToString()), new[] { "PolSourceObservationIssueID" })); } } PolSourceObservation PolSourceObservationPolSourceObservationID = (from c in db.PolSourceObservations where c.PolSourceObservationID == polSourceObservationIssue.PolSourceObservationID select c).FirstOrDefault(); if (PolSourceObservationPolSourceObservationID == null) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "PolSourceObservation", "PolSourceObservationID", polSourceObservationIssue.PolSourceObservationID.ToString()), new[] { "PolSourceObservationID" })); } if (string.IsNullOrWhiteSpace(polSourceObservationIssue.ObservationInfo)) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "ObservationInfo"), new[] { "ObservationInfo" })); } if (!string.IsNullOrWhiteSpace(polSourceObservationIssue.ObservationInfo) && polSourceObservationIssue.ObservationInfo.Length > 250) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._MaxLengthIs_, "ObservationInfo", "250"), new[] { "ObservationInfo" })); } if (polSourceObservationIssue.Ordinal < 0 || polSourceObservationIssue.Ordinal > 1000) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._ValueShouldBeBetween_And_, "Ordinal", "0", "1000"), new[] { "Ordinal" })); } //ExtraComment has no StringLength Attribute if (polSourceObservationIssue.LastUpdateDate_UTC.Year == 1) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "LastUpdateDate_UTC"), new[] { "LastUpdateDate_UTC" })); } else { if (polSourceObservationIssue.LastUpdateDate_UTC.Year < 1980) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._YearShouldBeBiggerThan_, "LastUpdateDate_UTC", "1980"), new[] { "LastUpdateDate_UTC" })); } } TVItem TVItemLastUpdateContactTVItemID = (from c in db.TVItems where c.TVItemID == polSourceObservationIssue.LastUpdateContactTVItemID select c).FirstOrDefault(); if (TVItemLastUpdateContactTVItemID == null) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVItem", "LastUpdateContactTVItemID", polSourceObservationIssue.LastUpdateContactTVItemID.ToString()), new[] { "LastUpdateContactTVItemID" })); } else { List <TVTypeEnum> AllowableTVTypes = new List <TVTypeEnum>() { TVTypeEnum.Contact, }; if (!AllowableTVTypes.Contains(TVItemLastUpdateContactTVItemID.TVType)) { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult(string.Format(CSSPServicesRes._IsNotOfType_, "LastUpdateContactTVItemID", "Contact"), new[] { "LastUpdateContactTVItemID" })); } } retStr = ""; // added to stop compiling CSSPError if (retStr != "") // will never be true { polSourceObservationIssue.HasErrors = true; yield return(new ValidationResult("AAA", new[] { "AAA" })); } }
public void PolSourceObservation_Properties_Test() { foreach (CultureInfo culture in AllowableCulture) { ChangeCulture(culture); using (CSSPDBContext dbTestDB = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB)) { PolSourceObservationService polSourceObservationService = new PolSourceObservationService(new Query() { Lang = culture.TwoLetterISOLanguageName }, dbTestDB, ContactID); int count = 0; if (count == 1) { // just so we don't get a warning during compile [The variable 'count' is assigned but its value is never used] } count = polSourceObservationService.GetPolSourceObservationList().Count(); PolSourceObservation polSourceObservation = GetFilledRandomPolSourceObservation(""); // ------------------------------- // ------------------------------- // Properties testing // ------------------------------- // ------------------------------- // ----------------------------------- // [Key] // Is NOT Nullable // polSourceObservation.PolSourceObservationID (Int32) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.PolSourceObservationID = 0; polSourceObservationService.Update(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "PolSourceObservationID"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.PolSourceObservationID = 10000000; polSourceObservationService.Update(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "PolSourceObservation", "PolSourceObservationID", polSourceObservation.PolSourceObservationID.ToString()), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); // ----------------------------------- // Is NOT Nullable // [CSSPExist(ExistTypeName = "PolSourceSite", ExistPlurial = "s", ExistFieldID = "PolSourceSiteID", AllowableTVtypeList = )] // polSourceObservation.PolSourceSiteID (Int32) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.PolSourceSiteID = 0; polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "PolSourceSite", "PolSourceSiteID", polSourceObservation.PolSourceSiteID.ToString()), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); // ----------------------------------- // Is NOT Nullable // [CSSPAfter(Year = 1980)] // polSourceObservation.ObservationDate_Local (DateTime) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.ObservationDate_Local = new DateTime(); polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "ObservationDate_Local"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.ObservationDate_Local = new DateTime(1979, 1, 1); polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._YearShouldBeBiggerThan_, "ObservationDate_Local", "1980"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); // ----------------------------------- // Is NOT Nullable // [CSSPExist(ExistTypeName = "TVItem", ExistPlurial = "s", ExistFieldID = "TVItemID", AllowableTVtypeList = Contact)] // polSourceObservation.ContactTVItemID (Int32) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.ContactTVItemID = 0; polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVItem", "ContactTVItemID", polSourceObservation.ContactTVItemID.ToString()), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.ContactTVItemID = 1; polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._IsNotOfType_, "ContactTVItemID", "Contact"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); // ----------------------------------- // Is NOT Nullable // polSourceObservation.DesktopReviewed (Boolean) // ----------------------------------- // ----------------------------------- // Is NOT Nullable // polSourceObservation.Observation_ToBeDeleted (String) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation("Observation_ToBeDeleted"); Assert.AreEqual(false, polSourceObservationService.Add(polSourceObservation)); Assert.AreEqual(1, polSourceObservation.ValidationResults.Count()); Assert.IsTrue(polSourceObservation.ValidationResults.Where(c => c.ErrorMessage == string.Format(CSSPServicesRes._IsRequired, "Observation_ToBeDeleted")).Any()); Assert.AreEqual(null, polSourceObservation.Observation_ToBeDeleted); Assert.AreEqual(count, polSourceObservationService.GetPolSourceObservationList().Count()); // ----------------------------------- // Is NOT Nullable // [CSSPAfter(Year = 1980)] // polSourceObservation.LastUpdateDate_UTC (DateTime) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.LastUpdateDate_UTC = new DateTime(); polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "LastUpdateDate_UTC"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.LastUpdateDate_UTC = new DateTime(1979, 1, 1); polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._YearShouldBeBiggerThan_, "LastUpdateDate_UTC", "1980"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); // ----------------------------------- // Is NOT Nullable // [CSSPExist(ExistTypeName = "TVItem", ExistPlurial = "s", ExistFieldID = "TVItemID", AllowableTVtypeList = Contact)] // polSourceObservation.LastUpdateContactTVItemID (Int32) // ----------------------------------- polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.LastUpdateContactTVItemID = 0; polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVItem", "LastUpdateContactTVItemID", polSourceObservation.LastUpdateContactTVItemID.ToString()), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); polSourceObservation = null; polSourceObservation = GetFilledRandomPolSourceObservation(""); polSourceObservation.LastUpdateContactTVItemID = 1; polSourceObservationService.Add(polSourceObservation); Assert.AreEqual(string.Format(CSSPServicesRes._IsNotOfType_, "LastUpdateContactTVItemID", "Contact"), polSourceObservation.ValidationResults.FirstOrDefault().ErrorMessage); // ----------------------------------- // Is NOT Nullable // [NotMapped] // polSourceObservation.HasErrors (Boolean) // ----------------------------------- // No testing requied // ----------------------------------- // Is NOT Nullable // [NotMapped] // polSourceObservation.ValidationResults (IEnumerable`1) // ----------------------------------- // No testing requied } } }
public void PolSourceObservation_Controller_GetPolSourceObservationList_Test() { foreach (LanguageEnum LanguageRequest in AllowableLanguages) { foreach (int ContactID in new List <int>() { AdminContactID }) //, TestEmailValidatedContactID, TestEmailNotValidatedContactID }) { PolSourceObservationController polSourceObservationController = new PolSourceObservationController(DatabaseTypeEnum.SqlServerTestDB); Assert.IsNotNull(polSourceObservationController); Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, polSourceObservationController.DatabaseType); PolSourceObservation polSourceObservationFirst = new PolSourceObservation(); int count = -1; Query query = new Query(); using (CSSPDBContext db = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB)) { PolSourceObservationService polSourceObservationService = new PolSourceObservationService(query, db, ContactID); polSourceObservationFirst = (from c in db.PolSourceObservations select c).FirstOrDefault(); count = (from c in db.PolSourceObservations select c).Count(); count = (query.Take > count ? count : query.Take); } // ok with PolSourceObservation info IHttpActionResult jsonRet = polSourceObservationController.GetPolSourceObservationList(); Assert.IsNotNull(jsonRet); OkNegotiatedContentResult <List <PolSourceObservation> > ret = jsonRet as OkNegotiatedContentResult <List <PolSourceObservation> >; Assert.AreEqual(polSourceObservationFirst.PolSourceObservationID, ret.Content[0].PolSourceObservationID); Assert.AreEqual((count > query.Take ? query.Take : count), ret.Content.Count); List <PolSourceObservation> polSourceObservationList = new List <PolSourceObservation>(); count = -1; query = new Query(); using (CSSPDBContext db = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB)) { PolSourceObservationService polSourceObservationService = new PolSourceObservationService(query, db, ContactID); polSourceObservationList = (from c in db.PolSourceObservations select c).OrderBy(c => c.PolSourceObservationID).Skip(0).Take(2).ToList(); count = (from c in db.PolSourceObservations select c).Count(); } if (count > 0) { query.Skip = 0; query.Take = 5; count = (query.Take > count ? query.Take : count); // ok with PolSourceObservation info jsonRet = polSourceObservationController.GetPolSourceObservationList(query.Language.ToString(), query.Skip, query.Take); Assert.IsNotNull(jsonRet); ret = jsonRet as OkNegotiatedContentResult <List <PolSourceObservation> >; Assert.AreEqual(polSourceObservationList[0].PolSourceObservationID, ret.Content[0].PolSourceObservationID); Assert.AreEqual((count > query.Take ? query.Take : count), ret.Content.Count); if (count > 1) { query.Skip = 1; query.Take = 5; count = (query.Take > count ? query.Take : count); // ok with PolSourceObservation info IHttpActionResult jsonRet2 = polSourceObservationController.GetPolSourceObservationList(query.Language.ToString(), query.Skip, query.Take); Assert.IsNotNull(jsonRet2); OkNegotiatedContentResult <List <PolSourceObservation> > ret2 = jsonRet2 as OkNegotiatedContentResult <List <PolSourceObservation> >; Assert.AreEqual(polSourceObservationList[1].PolSourceObservationID, ret2.Content[0].PolSourceObservationID); Assert.AreEqual((count > query.Take ? query.Take : count), ret2.Content.Count); } } } } }
public void PolSourceObservation_Controller_Delete_Test() { foreach (LanguageEnum LanguageRequest in AllowableLanguages) { foreach (int ContactID in new List <int>() { AdminContactID }) //, TestEmailValidatedContactID, TestEmailNotValidatedContactID }) { PolSourceObservationController polSourceObservationController = new PolSourceObservationController(DatabaseTypeEnum.SqlServerTestDB); Assert.IsNotNull(polSourceObservationController); Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, polSourceObservationController.DatabaseType); PolSourceObservation polSourceObservationLast = new PolSourceObservation(); using (CSSPDBContext db = new CSSPDBContext(DatabaseType)) { Query query = new Query(); query.Language = LanguageRequest; query.Asc = ""; query.Desc = ""; PolSourceObservationService polSourceObservationService = new PolSourceObservationService(query, db, ContactID); polSourceObservationLast = (from c in db.PolSourceObservations select c).FirstOrDefault(); } // ok with PolSourceObservation info IHttpActionResult jsonRet = polSourceObservationController.GetPolSourceObservationWithID(polSourceObservationLast.PolSourceObservationID); Assert.IsNotNull(jsonRet); OkNegotiatedContentResult <PolSourceObservation> Ret = jsonRet as OkNegotiatedContentResult <PolSourceObservation>; PolSourceObservation polSourceObservationRet = Ret.Content; Assert.AreEqual(polSourceObservationLast.PolSourceObservationID, polSourceObservationRet.PolSourceObservationID); BadRequestErrorMessageResult badRequest = jsonRet as BadRequestErrorMessageResult; Assert.IsNull(badRequest); // Post to return newly added PolSourceObservation polSourceObservationRet.PolSourceObservationID = 0; polSourceObservationController.Request = new System.Net.Http.HttpRequestMessage(); polSourceObservationController.Request.RequestUri = new System.Uri("http://localhost:5000/api/polSourceObservation"); IHttpActionResult jsonRet3 = polSourceObservationController.Post(polSourceObservationRet, LanguageRequest.ToString()); Assert.IsNotNull(jsonRet3); CreatedNegotiatedContentResult <PolSourceObservation> polSourceObservationRet3 = jsonRet3 as CreatedNegotiatedContentResult <PolSourceObservation>; Assert.IsNotNull(polSourceObservationRet3); PolSourceObservation polSourceObservation = polSourceObservationRet3.Content; BadRequestErrorMessageResult badRequest3 = jsonRet3 as BadRequestErrorMessageResult; Assert.IsNull(badRequest3); // Delete to return success IHttpActionResult jsonRet2 = polSourceObservationController.Delete(polSourceObservationRet, LanguageRequest.ToString()); Assert.IsNotNull(jsonRet2); OkNegotiatedContentResult <PolSourceObservation> polSourceObservationRet2 = jsonRet2 as OkNegotiatedContentResult <PolSourceObservation>; Assert.IsNotNull(polSourceObservationRet2); BadRequestErrorMessageResult badRequest2 = jsonRet2 as BadRequestErrorMessageResult; Assert.IsNull(badRequest2); // Delete to return CSSPError because PolSourceObservationID of 0 does not exist polSourceObservationRet.PolSourceObservationID = 0; IHttpActionResult jsonRet4 = polSourceObservationController.Delete(polSourceObservationRet, LanguageRequest.ToString()); Assert.IsNotNull(jsonRet4); OkNegotiatedContentResult <PolSourceObservation> polSourceObservationRet4 = jsonRet4 as OkNegotiatedContentResult <PolSourceObservation>; Assert.IsNull(polSourceObservationRet4); BadRequestErrorMessageResult badRequest4 = jsonRet4 as BadRequestErrorMessageResult; Assert.IsNotNull(badRequest4); } } }
public PolSourceObservationTest() { polSourceObservation = new PolSourceObservation(); polSourceObservationExtraA = new PolSourceObservationExtraA(); polSourceObservationExtraB = new PolSourceObservationExtraB(); }