Esempio n. 1
0
        private TVFileLanguage GetFilledRandomTVFileLanguage(string OmitPropName)
        {
            TVFileLanguage tvFileLanguage = new TVFileLanguage();

            if (OmitPropName != "TVFileID")
            {
                tvFileLanguage.TVFileID = 1;
            }
            if (OmitPropName != "Language")
            {
                tvFileLanguage.Language = LanguageRequest;
            }
            if (OmitPropName != "FileDescription")
            {
                tvFileLanguage.FileDescription = GetRandomString("", 20);
            }
            if (OmitPropName != "TranslationStatus")
            {
                tvFileLanguage.TranslationStatus = (TranslationStatusEnum)GetRandomEnumType(typeof(TranslationStatusEnum));
            }
            if (OmitPropName != "LastUpdateDate_UTC")
            {
                tvFileLanguage.LastUpdateDate_UTC = new DateTime(2005, 3, 6);
            }
            if (OmitPropName != "LastUpdateContactTVItemID")
            {
                tvFileLanguage.LastUpdateContactTVItemID = 2;
            }

            return(tvFileLanguage);
        }
        public TVFileLanguageModel PostDeleteTVFileLanguageDB(int TVFileID, LanguageEnum Language)
        {
            ContactOK contactOK = IsContactOK();

            if (!string.IsNullOrWhiteSpace(contactOK.Error))
            {
                return(ReturnError(contactOK.Error));
            }

            TVFileLanguage tvFileLanguageToDelete = GetTVFileLanguageWithTVFileIDAndLanguageDB(TVFileID, Language);

            if (tvFileLanguageToDelete == null)
            {
                return(ReturnError(string.Format(ServiceRes.CouldNotFind_ToDelete, ServiceRes.TVFileLanguage)));
            }

            using (TransactionScope ts = new TransactionScope())
            {
                db.TVFileLanguages.Remove(tvFileLanguageToDelete);
                string retStr = DoDeleteChanges();
                if (!string.IsNullOrWhiteSpace(retStr))
                {
                    return(ReturnError(retStr));
                }

                LogModel logModel = _LogService.PostAddLogForObj("TVFileLanguages", tvFileLanguageToDelete.TVFileLanguageID, LogCommandEnum.Delete, tvFileLanguageToDelete);
                if (!string.IsNullOrWhiteSpace(logModel.Error))
                {
                    return(ReturnError(logModel.Error));
                }

                ts.Complete();
            }
            return(ReturnError(""));
        }
        public void TVFileLanguage_Controller_Put_Test()
        {
            foreach (LanguageEnum LanguageRequest in AllowableLanguages)
            {
                foreach (int ContactID in new List <int>()
                {
                    AdminContactID
                })                                                             //, TestEmailValidatedContactID, TestEmailNotValidatedContactID })
                {
                    TVFileLanguageController tvFileLanguageController = new TVFileLanguageController(DatabaseTypeEnum.SqlServerTestDB);
                    Assert.IsNotNull(tvFileLanguageController);
                    Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, tvFileLanguageController.DatabaseType);

                    TVFileLanguage tvFileLanguageLast = new TVFileLanguage();
                    using (CSSPDBContext db = new CSSPDBContext(DatabaseType))
                    {
                        Query query = new Query();
                        query.Language = LanguageRequest;

                        TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(query, db, ContactID);
                        tvFileLanguageLast = (from c in db.TVFileLanguages select c).FirstOrDefault();
                    }

                    // ok with TVFileLanguage info
                    IHttpActionResult jsonRet = tvFileLanguageController.GetTVFileLanguageWithID(tvFileLanguageLast.TVFileLanguageID);
                    Assert.IsNotNull(jsonRet);

                    OkNegotiatedContentResult <TVFileLanguage> Ret = jsonRet as OkNegotiatedContentResult <TVFileLanguage>;
                    TVFileLanguage tvFileLanguageRet = Ret.Content;
                    Assert.AreEqual(tvFileLanguageLast.TVFileLanguageID, tvFileLanguageRet.TVFileLanguageID);

                    BadRequestErrorMessageResult badRequest = jsonRet as BadRequestErrorMessageResult;
                    Assert.IsNull(badRequest);

                    // Put to return success
                    IHttpActionResult jsonRet2 = tvFileLanguageController.Put(tvFileLanguageRet, LanguageRequest.ToString());
                    Assert.IsNotNull(jsonRet2);

                    OkNegotiatedContentResult <TVFileLanguage> tvFileLanguageRet2 = jsonRet2 as OkNegotiatedContentResult <TVFileLanguage>;
                    Assert.IsNotNull(tvFileLanguageRet2);

                    BadRequestErrorMessageResult badRequest2 = jsonRet2 as BadRequestErrorMessageResult;
                    Assert.IsNull(badRequest2);

                    // Put to return CSSPError because TVFileLanguageID of 0 does not exist
                    tvFileLanguageRet.TVFileLanguageID = 0;
                    IHttpActionResult jsonRet3 = tvFileLanguageController.Put(tvFileLanguageRet, LanguageRequest.ToString());
                    Assert.IsNotNull(jsonRet3);

                    OkNegotiatedContentResult <TVFileLanguage> tvFileLanguageRet3 = jsonRet3 as OkNegotiatedContentResult <TVFileLanguage>;
                    Assert.IsNull(tvFileLanguageRet3);

                    BadRequestErrorMessageResult badRequest3 = jsonRet3 as BadRequestErrorMessageResult;
                    Assert.IsNotNull(badRequest3);
                }
            }
        }
        public TVFileLanguage GetTVFileLanguageWithTVFileIDAndLanguageDB(int TVFileID, LanguageEnum Language)
        {
            TVFileLanguage tvFileLanguage = (from c in db.TVFileLanguages
                                             where c.TVFileID == TVFileID &&
                                             c.Language == (int)Language
                                             select c).FirstOrDefault <TVFileLanguage>();

            return(tvFileLanguage);
        }
Esempio n. 5
0
        public void TVFileLanguage_CRUD_Test()
        {
            foreach (CultureInfo culture in AllowableCulture)
            {
                ChangeCulture(culture);

                using (CSSPDBContext dbTestDB = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB))
                {
                    TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(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]
                    }

                    TVFileLanguage tvFileLanguage = GetFilledRandomTVFileLanguage("");

                    // -------------------------------
                    // -------------------------------
                    // CRUD testing
                    // -------------------------------
                    // -------------------------------

                    count = tvFileLanguageService.GetTVFileLanguageList().Count();

                    Assert.AreEqual(count, (from c in dbTestDB.TVFileLanguages select c).Count());

                    tvFileLanguageService.Add(tvFileLanguage);
                    if (tvFileLanguage.HasErrors)
                    {
                        Assert.AreEqual("", tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);
                    }
                    Assert.AreEqual(true, tvFileLanguageService.GetTVFileLanguageList().Where(c => c == tvFileLanguage).Any());
                    tvFileLanguageService.Update(tvFileLanguage);
                    if (tvFileLanguage.HasErrors)
                    {
                        Assert.AreEqual("", tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);
                    }
                    Assert.AreEqual(count + 1, tvFileLanguageService.GetTVFileLanguageList().Count());
                    tvFileLanguageService.Delete(tvFileLanguage);
                    if (tvFileLanguage.HasErrors)
                    {
                        Assert.AreEqual("", tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);
                    }
                    Assert.AreEqual(count, tvFileLanguageService.GetTVFileLanguageList().Count());
                }
            }
        }
        public IHttpActionResult GetTVFileLanguageWithID([FromUri] int TVFileLanguageID, [FromUri] string lang = "en", [FromUri] string extra = "")
        {
            using (CSSPDBContext db = new CSSPDBContext(DatabaseType))
            {
                TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(new Query()
                {
                    Language = (lang == "fr" ? LanguageEnum.fr : LanguageEnum.en)
                }, db, ContactID);

                tvFileLanguageService.Query = tvFileLanguageService.FillQuery(typeof(TVFileLanguage), lang, 0, 1, "", "", extra);

                if (tvFileLanguageService.Query.Extra == "A")
                {
                    TVFileLanguageExtraA tvFileLanguageExtraA = new TVFileLanguageExtraA();
                    tvFileLanguageExtraA = tvFileLanguageService.GetTVFileLanguageExtraAWithTVFileLanguageID(TVFileLanguageID);

                    if (tvFileLanguageExtraA == null)
                    {
                        return(NotFound());
                    }

                    return(Ok(tvFileLanguageExtraA));
                }
                else if (tvFileLanguageService.Query.Extra == "B")
                {
                    TVFileLanguageExtraB tvFileLanguageExtraB = new TVFileLanguageExtraB();
                    tvFileLanguageExtraB = tvFileLanguageService.GetTVFileLanguageExtraBWithTVFileLanguageID(TVFileLanguageID);

                    if (tvFileLanguageExtraB == null)
                    {
                        return(NotFound());
                    }

                    return(Ok(tvFileLanguageExtraB));
                }
                else
                {
                    TVFileLanguage tvFileLanguage = new TVFileLanguage();
                    tvFileLanguage = tvFileLanguageService.GetTVFileLanguageWithTVFileLanguageID(TVFileLanguageID);

                    if (tvFileLanguage == null)
                    {
                        return(NotFound());
                    }

                    return(Ok(tvFileLanguage));
                }
            }
        }
Esempio n. 7
0
        public void SetupTest(ContactModel contactModelToDo, CultureInfo culture)
        {
            Thread.CurrentThread.CurrentCulture   = culture;
            Thread.CurrentThread.CurrentUICulture = culture;

            contactModel           = contactModelToDo;
            user                   = new GenericPrincipal(new GenericIdentity(contactModel.LoginEmail, "Forms"), null);
            tvFileService          = new TVFileService((culture.TwoLetterISOLanguageName == "fr" ? LanguageEnum.fr : LanguageEnum.en), user);
            tvFileLanguageService  = new TVFileLanguageService((culture.TwoLetterISOLanguageName == "fr" ? LanguageEnum.fr : LanguageEnum.en), user);
            testDBService          = new TestDBService((culture.TwoLetterISOLanguageName == "fr" ? LanguageEnum.fr : LanguageEnum.en), user, TableName, Plurial);
            randomService          = new RandomService((culture.TwoLetterISOLanguageName == "fr" ? LanguageEnum.fr : LanguageEnum.en), user);
            tvItemService          = new TVItemService((culture.TwoLetterISOLanguageName == "fr" ? LanguageEnum.fr : LanguageEnum.en), user);
            tvFileLanguageModelNew = new TVFileLanguageModel();
            tvFileLanguage         = new TVFileLanguage();
        }
        public TVFileLanguageModel PostUpdateTVFileLanguageDB(TVFileLanguageModel tvFileLanguageModel)
        {
            string retStr = TVFileLanguageModelOK(tvFileLanguageModel);

            if (!string.IsNullOrWhiteSpace(retStr))
            {
                return(ReturnError(retStr));
            }

            ContactOK contactOK = IsContactOK();

            if (!string.IsNullOrEmpty(contactOK.Error))
            {
                return(ReturnError(contactOK.Error));
            }

            TVFileLanguage tvFileLanguageToUpdate = GetTVFileLanguageWithTVFileIDAndLanguageDB(tvFileLanguageModel.TVFileID, tvFileLanguageModel.Language);

            if (tvFileLanguageToUpdate == null)
            {
                return(ReturnError(string.Format(ServiceRes.CouldNotFind_ToUpdate, ServiceRes.TVFileLanguage)));
            }

            retStr = FillTVFileLanguage(tvFileLanguageToUpdate, tvFileLanguageModel, contactOK);
            if (!string.IsNullOrWhiteSpace(retStr))
            {
                return(ReturnError(retStr));
            }

            using (TransactionScope ts = new TransactionScope())
            {
                retStr = DoUpdateChanges();
                if (!string.IsNullOrWhiteSpace(retStr))
                {
                    return(ReturnError(retStr));
                }

                LogModel logModel = _LogService.PostAddLogForObj("TVFileLanguages", tvFileLanguageToUpdate.TVFileLanguageID, LogCommandEnum.Change, tvFileLanguageToUpdate);
                if (!string.IsNullOrWhiteSpace(logModel.Error))
                {
                    return(ReturnError(logModel.Error));
                }

                ts.Complete();
            }
            return(GetTVFileLanguageModelWithTVFileIDAndLanguageDB(tvFileLanguageToUpdate.TVFileID, (LanguageEnum)tvFileLanguageToUpdate.Language));
        }
        // Post
        public TVFileLanguageModel PostAddTVFileLanguageDB(TVFileLanguageModel tvFileLanguageModel)
        {
            string retStr = TVFileLanguageModelOK(tvFileLanguageModel);

            if (!string.IsNullOrWhiteSpace(retStr))
            {
                return(ReturnError(retStr));
            }

            ContactOK contactOK = IsContactOK();

            if (!string.IsNullOrEmpty(contactOK.Error))
            {
                return(ReturnError(contactOK.Error));
            }

            TVFileLanguageModel tvFileLanguageModelExist = GetTVFileLanguageModelWithTVFileIDAndLanguageDB(tvFileLanguageModel.TVFileID, tvFileLanguageModel.Language);

            if (string.IsNullOrWhiteSpace(tvFileLanguageModelExist.Error))
            {
                return(ReturnError(string.Format(ServiceRes._AlreadyExists, ServiceRes.TVFileLanguage)));
            }

            TVFileLanguage tvFileLanguageNew = new TVFileLanguage();

            retStr = FillTVFileLanguage(tvFileLanguageNew, tvFileLanguageModel, contactOK);
            if (!string.IsNullOrWhiteSpace(retStr))
            {
                return(ReturnError(retStr));
            }

            db.TVFileLanguages.Add(tvFileLanguageNew);
            retStr = DoAddChanges();
            if (!string.IsNullOrWhiteSpace(retStr))
            {
                return(ReturnError(retStr));
            }

            LogModel logModel = _LogService.PostAddLogForObj("TVFileLanguages", tvFileLanguageNew.TVFileLanguageID, LogCommandEnum.Add, tvFileLanguageNew);

            if (!string.IsNullOrWhiteSpace(logModel.Error))
            {
                return(ReturnError(logModel.Error));
            }

            return(GetTVFileLanguageModelWithTVFileIDAndLanguageDB(tvFileLanguageNew.TVFileID, tvFileLanguageModel.Language));
        }
        private bool TryToSave(TVFileLanguage tvFileLanguage)
        {
            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateException ex)
            {
                tvFileLanguage.ValidationResults = new List <ValidationResult>()
                {
                    new ValidationResult(ex.Message + (ex.InnerException != null ? " Inner: " + ex.InnerException.Message : ""))
                }.AsEnumerable();
                return(false);
            }

            return(true);
        }
        public bool Update(TVFileLanguage tvFileLanguage)
        {
            tvFileLanguage.ValidationResults = Validate(new ValidationContext(tvFileLanguage), ActionDBTypeEnum.Update);
            if (tvFileLanguage.ValidationResults.Count() > 0)
            {
                return(false);
            }

            db.TVFileLanguages.Update(tvFileLanguage);

            if (!TryToSave(tvFileLanguage))
            {
                return(false);
            }

            return(true);
        }
Esempio n. 12
0
        public void TVFileLanguageService_GetTVFileLanguageWithTVFileIDAndLanguageDB_Test()
        {
            foreach (CultureInfo culture in setupData.cultureListGood)
            {
                SetupTest(contactModelListGood[0], culture);

                using (TransactionScope ts = new TransactionScope())
                {
                    LanguageEnum LangToAdd = LanguageEnum.en;

                    TVFileLanguageModel tvFileLanguageModelRet = AddTVFileLanguageModel(LangToAdd);

                    TVFileLanguage tvFileLanguageRet2 = tvFileLanguageService.GetTVFileLanguageWithTVFileIDAndLanguageDB(tvFileLanguageModelRet.TVFileID, LangToAdd);
                    Assert.AreEqual(tvFileLanguageModelRet.TVFileID, tvFileLanguageRet2.TVFileID);
                    Assert.AreEqual(tvFileLanguageModelRet.Language, (LanguageEnum)tvFileLanguageRet2.Language);
                    Assert.AreEqual(LangToAdd, (LanguageEnum)tvFileLanguageRet2.Language);
                }
            }
        }
        public void TVFileLanguage_Controller_GetTVFileLanguageWithID_Test()
        {
            foreach (LanguageEnum LanguageRequest in AllowableLanguages)
            {
                foreach (int ContactID in new List <int>()
                {
                    AdminContactID
                })                                                             //, TestEmailValidatedContactID, TestEmailNotValidatedContactID })
                {
                    TVFileLanguageController tvFileLanguageController = new TVFileLanguageController(DatabaseTypeEnum.SqlServerTestDB);
                    Assert.IsNotNull(tvFileLanguageController);
                    Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, tvFileLanguageController.DatabaseType);

                    TVFileLanguage tvFileLanguageFirst = new TVFileLanguage();
                    using (CSSPDBContext db = new CSSPDBContext(DatabaseType))
                    {
                        TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(new Query(), db, ContactID);
                        tvFileLanguageFirst = (from c in db.TVFileLanguages select c).FirstOrDefault();
                    }

                    // ok with TVFileLanguage info
                    IHttpActionResult jsonRet = tvFileLanguageController.GetTVFileLanguageWithID(tvFileLanguageFirst.TVFileLanguageID);
                    Assert.IsNotNull(jsonRet);

                    OkNegotiatedContentResult <TVFileLanguage> Ret = jsonRet as OkNegotiatedContentResult <TVFileLanguage>;
                    TVFileLanguage tvFileLanguageRet = Ret.Content;
                    Assert.AreEqual(tvFileLanguageFirst.TVFileLanguageID, tvFileLanguageRet.TVFileLanguageID);

                    BadRequestErrorMessageResult badRequest = jsonRet as BadRequestErrorMessageResult;
                    Assert.IsNull(badRequest);

                    // Not Found
                    IHttpActionResult jsonRet2 = tvFileLanguageController.GetTVFileLanguageWithID(0);
                    Assert.IsNotNull(jsonRet2);

                    OkNegotiatedContentResult <TVFileLanguage> tvFileLanguageRet2 = jsonRet2 as OkNegotiatedContentResult <TVFileLanguage>;
                    Assert.IsNull(tvFileLanguageRet2);

                    NotFoundResult notFoundRequest = jsonRet2 as NotFoundResult;
                    Assert.IsNotNull(notFoundRequest);
                }
            }
        }
Esempio n. 14
0
        // Fill
        public string FillTVFileLanguage(TVFileLanguage tvFileLanguageNew, TVFileLanguageModel tvFileLanguageModel, ContactOK contactOK)
        {
            tvFileLanguageNew.DBCommand          = (int)tvFileLanguageModel.DBCommand;
            tvFileLanguageNew.TVFileID           = tvFileLanguageModel.TVFileID;
            tvFileLanguageNew.Language           = (int)tvFileLanguageModel.Language;
            tvFileLanguageNew.TranslationStatus  = (int)tvFileLanguageModel.TranslationStatus;
            tvFileLanguageNew.FileDescription    = tvFileLanguageModel.FileDescription;
            tvFileLanguageNew.LastUpdateDate_UTC = DateTime.UtcNow;
            if (contactOK == null)
            {
                tvFileLanguageNew.LastUpdateContactTVItemID = 2;
            }
            else
            {
                tvFileLanguageNew.LastUpdateContactTVItemID = contactOK.ContactTVItemID;
            }

            return("");
        }
        public IHttpActionResult Delete([FromBody] TVFileLanguage tvFileLanguage, [FromUri] string lang = "en")
        {
            using (CSSPDBContext db = new CSSPDBContext(DatabaseType))
            {
                TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(new Query()
                {
                    Language = (lang == "fr" ? LanguageEnum.fr : LanguageEnum.en)
                }, db, ContactID);

                if (!tvFileLanguageService.Delete(tvFileLanguage))
                {
                    return(BadRequest(String.Join("|||", tvFileLanguage.ValidationResults)));
                }
                else
                {
                    tvFileLanguage.ValidationResults = null;
                    return(Ok(tvFileLanguage));
                }
            }
        }
Esempio n. 16
0
        public void GetTVFileLanguageList_Test()
        {
            foreach (CultureInfo culture in AllowableCulture)
            {
                ChangeCulture(culture);

                using (CSSPDBContext dbTestDB = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB))
                {
                    TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(new Query()
                    {
                        Lang = culture.TwoLetterISOLanguageName
                    }, dbTestDB, ContactID);
                    TVFileLanguage tvFileLanguage = (from c in dbTestDB.TVFileLanguages select c).FirstOrDefault();
                    Assert.IsNotNull(tvFileLanguage);

                    List <TVFileLanguage> tvFileLanguageDirectQueryList = new List <TVFileLanguage>();
                    tvFileLanguageDirectQueryList = (from c in dbTestDB.TVFileLanguages select c).Take(200).ToList();

                    foreach (string extra in new List <string>()
                    {
                        null, "A", "B", "C", "D", "E"
                    })
                    {
                        tvFileLanguageService.Query.Extra = extra;

                        if (string.IsNullOrWhiteSpace(extra))
                        {
                            List <TVFileLanguage> tvFileLanguageList = new List <TVFileLanguage>();
                            tvFileLanguageList = tvFileLanguageService.GetTVFileLanguageList().ToList();
                            CheckTVFileLanguageFields(tvFileLanguageList);
                        }
                        else
                        {
                            //Assert.AreEqual(true, false);
                        }
                    }
                }
            }
        }
        private IEnumerable <ValidationResult> Validate(ValidationContext validationContext, ActionDBTypeEnum actionDBType)
        {
            string         retStr         = "";
            Enums          enums          = new Enums(LanguageRequest);
            TVFileLanguage tvFileLanguage = validationContext.ObjectInstance as TVFileLanguage;

            tvFileLanguage.HasErrors = false;

            if (actionDBType == ActionDBTypeEnum.Update || actionDBType == ActionDBTypeEnum.Delete)
            {
                if (tvFileLanguage.TVFileLanguageID == 0)
                {
                    tvFileLanguage.HasErrors = true;
                    yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "TVFileLanguageID"), new[] { "TVFileLanguageID" }));
                }

                if (!(from c in db.TVFileLanguages select c).Where(c => c.TVFileLanguageID == tvFileLanguage.TVFileLanguageID).Any())
                {
                    tvFileLanguage.HasErrors = true;
                    yield return(new ValidationResult(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVFileLanguage", "TVFileLanguageID", tvFileLanguage.TVFileLanguageID.ToString()), new[] { "TVFileLanguageID" }));
                }
            }

            TVFile TVFileTVFileID = (from c in db.TVFiles where c.TVFileID == tvFileLanguage.TVFileID select c).FirstOrDefault();

            if (TVFileTVFileID == null)
            {
                tvFileLanguage.HasErrors = true;
                yield return(new ValidationResult(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVFile", "TVFileID", tvFileLanguage.TVFileID.ToString()), new[] { "TVFileID" }));
            }

            retStr = enums.EnumTypeOK(typeof(LanguageEnum), (int?)tvFileLanguage.Language);
            if (!string.IsNullOrWhiteSpace(retStr))
            {
                tvFileLanguage.HasErrors = true;
                yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "Language"), new[] { "Language" }));
            }

            //FileDescription has no StringLength Attribute

            retStr = enums.EnumTypeOK(typeof(TranslationStatusEnum), (int?)tvFileLanguage.TranslationStatus);
            if (!string.IsNullOrWhiteSpace(retStr))
            {
                tvFileLanguage.HasErrors = true;
                yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "TranslationStatus"), new[] { "TranslationStatus" }));
            }

            if (tvFileLanguage.LastUpdateDate_UTC.Year == 1)
            {
                tvFileLanguage.HasErrors = true;
                yield return(new ValidationResult(string.Format(CSSPServicesRes._IsRequired, "LastUpdateDate_UTC"), new[] { "LastUpdateDate_UTC" }));
            }
            else
            {
                if (tvFileLanguage.LastUpdateDate_UTC.Year < 1980)
                {
                    tvFileLanguage.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 == tvFileLanguage.LastUpdateContactTVItemID select c).FirstOrDefault();

            if (TVItemLastUpdateContactTVItemID == null)
            {
                tvFileLanguage.HasErrors = true;
                yield return(new ValidationResult(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVItem", "LastUpdateContactTVItemID", tvFileLanguage.LastUpdateContactTVItemID.ToString()), new[] { "LastUpdateContactTVItemID" }));
            }
            else
            {
                List <TVTypeEnum> AllowableTVTypes = new List <TVTypeEnum>()
                {
                    TVTypeEnum.Contact,
                };
                if (!AllowableTVTypes.Contains(TVItemLastUpdateContactTVItemID.TVType))
                {
                    tvFileLanguage.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
            {
                tvFileLanguage.HasErrors = true;
                yield return(new ValidationResult("AAA", new[] { "AAA" }));
            }
        }
Esempio n. 18
0
 public TVFileLanguageTest()
 {
     tVFileLanguage       = new TVFileLanguage();
     tVFileLanguageExtraA = new TVFileLanguageExtraA();
     tVFileLanguageExtraB = new TVFileLanguageExtraB();
 }
        public void TVFileLanguage_Controller_GetTVFileLanguageList_Test()
        {
            foreach (LanguageEnum LanguageRequest in AllowableLanguages)
            {
                foreach (int ContactID in new List <int>()
                {
                    AdminContactID
                })                                                             //, TestEmailValidatedContactID, TestEmailNotValidatedContactID })
                {
                    TVFileLanguageController tvFileLanguageController = new TVFileLanguageController(DatabaseTypeEnum.SqlServerTestDB);
                    Assert.IsNotNull(tvFileLanguageController);
                    Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, tvFileLanguageController.DatabaseType);

                    TVFileLanguage tvFileLanguageFirst = new TVFileLanguage();
                    int            count = -1;
                    Query          query = new Query();
                    using (CSSPDBContext db = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB))
                    {
                        TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(query, db, ContactID);
                        tvFileLanguageFirst = (from c in db.TVFileLanguages select c).FirstOrDefault();
                        count = (from c in db.TVFileLanguages select c).Count();
                        count = (query.Take > count ? count : query.Take);
                    }

                    // ok with TVFileLanguage info
                    IHttpActionResult jsonRet = tvFileLanguageController.GetTVFileLanguageList();
                    Assert.IsNotNull(jsonRet);

                    OkNegotiatedContentResult <List <TVFileLanguage> > ret = jsonRet as OkNegotiatedContentResult <List <TVFileLanguage> >;
                    Assert.AreEqual(tvFileLanguageFirst.TVFileLanguageID, ret.Content[0].TVFileLanguageID);
                    Assert.AreEqual((count > query.Take ? query.Take : count), ret.Content.Count);

                    List <TVFileLanguage> tvFileLanguageList = new List <TVFileLanguage>();
                    count = -1;
                    query = new Query();
                    using (CSSPDBContext db = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB))
                    {
                        TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(query, db, ContactID);
                        tvFileLanguageList = (from c in db.TVFileLanguages select c).OrderBy(c => c.TVFileLanguageID).Skip(0).Take(2).ToList();
                        count = (from c in db.TVFileLanguages select c).Count();
                    }

                    if (count > 0)
                    {
                        query.Skip = 0;
                        query.Take = 5;
                        count      = (query.Take > count ? query.Take : count);

                        // ok with TVFileLanguage info
                        jsonRet = tvFileLanguageController.GetTVFileLanguageList(query.Language.ToString(), query.Skip, query.Take);
                        Assert.IsNotNull(jsonRet);

                        ret = jsonRet as OkNegotiatedContentResult <List <TVFileLanguage> >;
                        Assert.AreEqual(tvFileLanguageList[0].TVFileLanguageID, ret.Content[0].TVFileLanguageID);
                        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 TVFileLanguage info
                            IHttpActionResult jsonRet2 = tvFileLanguageController.GetTVFileLanguageList(query.Language.ToString(), query.Skip, query.Take);
                            Assert.IsNotNull(jsonRet2);

                            OkNegotiatedContentResult <List <TVFileLanguage> > ret2 = jsonRet2 as OkNegotiatedContentResult <List <TVFileLanguage> >;
                            Assert.AreEqual(tvFileLanguageList[1].TVFileLanguageID, ret2.Content[0].TVFileLanguageID);
                            Assert.AreEqual((count > query.Take ? query.Take : count), ret2.Content.Count);
                        }
                    }
                }
            }
        }
        public void TVFileLanguage_Controller_Post_Test()
        {
            foreach (LanguageEnum LanguageRequest in AllowableLanguages)
            {
                foreach (int ContactID in new List <int>()
                {
                    AdminContactID
                })                                                             //, TestEmailValidatedContactID, TestEmailNotValidatedContactID })
                {
                    TVFileLanguageController tvFileLanguageController = new TVFileLanguageController(DatabaseTypeEnum.SqlServerTestDB);
                    Assert.IsNotNull(tvFileLanguageController);
                    Assert.AreEqual(DatabaseTypeEnum.SqlServerTestDB, tvFileLanguageController.DatabaseType);

                    TVFileLanguage tvFileLanguageLast = new TVFileLanguage();
                    using (CSSPDBContext db = new CSSPDBContext(DatabaseType))
                    {
                        Query query = new Query();
                        query.Language = LanguageRequest;
                        query.Asc      = "";
                        query.Desc     = "";

                        TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(query, db, ContactID);
                        tvFileLanguageLast = (from c in db.TVFileLanguages select c).FirstOrDefault();
                    }

                    // ok with TVFileLanguage info
                    IHttpActionResult jsonRet = tvFileLanguageController.GetTVFileLanguageWithID(tvFileLanguageLast.TVFileLanguageID);
                    Assert.IsNotNull(jsonRet);

                    OkNegotiatedContentResult <TVFileLanguage> Ret = jsonRet as OkNegotiatedContentResult <TVFileLanguage>;
                    TVFileLanguage tvFileLanguageRet = Ret.Content;
                    Assert.AreEqual(tvFileLanguageLast.TVFileLanguageID, tvFileLanguageRet.TVFileLanguageID);

                    BadRequestErrorMessageResult badRequest = jsonRet as BadRequestErrorMessageResult;
                    Assert.IsNull(badRequest);

                    // Post to return CSSPError because TVFileLanguageID exist
                    IHttpActionResult jsonRet2 = tvFileLanguageController.Post(tvFileLanguageRet, LanguageRequest.ToString());
                    Assert.IsNotNull(jsonRet2);

                    OkNegotiatedContentResult <TVFileLanguage> tvFileLanguageRet2 = jsonRet2 as OkNegotiatedContentResult <TVFileLanguage>;
                    Assert.IsNull(tvFileLanguageRet2);

                    BadRequestErrorMessageResult badRequest2 = jsonRet2 as BadRequestErrorMessageResult;
                    Assert.IsNotNull(badRequest2);

                    // Post to return newly added TVFileLanguage
                    tvFileLanguageRet.TVFileLanguageID          = 0;
                    tvFileLanguageController.Request            = new System.Net.Http.HttpRequestMessage();
                    tvFileLanguageController.Request.RequestUri = new System.Uri("http://localhost:5000/api/tvFileLanguage");
                    IHttpActionResult jsonRet3 = tvFileLanguageController.Post(tvFileLanguageRet, LanguageRequest.ToString());
                    Assert.IsNotNull(jsonRet3);

                    CreatedNegotiatedContentResult <TVFileLanguage> tvFileLanguageRet3 = jsonRet3 as CreatedNegotiatedContentResult <TVFileLanguage>;
                    Assert.IsNotNull(tvFileLanguageRet3);

                    BadRequestErrorMessageResult badRequest3 = jsonRet3 as BadRequestErrorMessageResult;
                    Assert.IsNull(badRequest3);

                    IHttpActionResult jsonRet4 = tvFileLanguageController.Delete(tvFileLanguageRet, LanguageRequest.ToString());
                    Assert.IsNotNull(jsonRet4);

                    OkNegotiatedContentResult <TVFileLanguage> tvFileLanguageRet4 = jsonRet4 as OkNegotiatedContentResult <TVFileLanguage>;
                    Assert.IsNotNull(tvFileLanguageRet4);

                    BadRequestErrorMessageResult badRequest4 = jsonRet4 as BadRequestErrorMessageResult;
                    Assert.IsNull(badRequest4);
                }
            }
        }
Esempio n. 21
0
        public void TVFileLanguage_Properties_Test()
        {
            foreach (CultureInfo culture in AllowableCulture)
            {
                ChangeCulture(culture);

                using (CSSPDBContext dbTestDB = new CSSPDBContext(DatabaseTypeEnum.SqlServerTestDB))
                {
                    TVFileLanguageService tvFileLanguageService = new TVFileLanguageService(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 = tvFileLanguageService.GetTVFileLanguageList().Count();

                    TVFileLanguage tvFileLanguage = GetFilledRandomTVFileLanguage("");

                    // -------------------------------
                    // -------------------------------
                    // Properties testing
                    // -------------------------------
                    // -------------------------------


                    // -----------------------------------
                    // [Key]
                    // Is NOT Nullable
                    // tvFileLanguage.TVFileLanguageID   (Int32)
                    // -----------------------------------

                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.TVFileLanguageID = 0;
                    tvFileLanguageService.Update(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "TVFileLanguageID"), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);

                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.TVFileLanguageID = 10000000;
                    tvFileLanguageService.Update(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVFileLanguage", "TVFileLanguageID", tvFileLanguage.TVFileLanguageID.ToString()), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);


                    // -----------------------------------
                    // Is NOT Nullable
                    // [CSSPExist(ExistTypeName = "TVFile", ExistPlurial = "s", ExistFieldID = "TVFileID", AllowableTVtypeList = )]
                    // tvFileLanguage.TVFileID   (Int32)
                    // -----------------------------------

                    tvFileLanguage          = null;
                    tvFileLanguage          = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.TVFileID = 0;
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVFile", "TVFileID", tvFileLanguage.TVFileID.ToString()), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);


                    // -----------------------------------
                    // Is NOT Nullable
                    // [CSSPEnumType]
                    // tvFileLanguage.Language   (LanguageEnum)
                    // -----------------------------------

                    tvFileLanguage          = null;
                    tvFileLanguage          = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.Language = (LanguageEnum)1000000;
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "Language"), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);


                    // -----------------------------------
                    // Is Nullable
                    // tvFileLanguage.FileDescription   (String)
                    // -----------------------------------


                    // -----------------------------------
                    // Is NOT Nullable
                    // [CSSPEnumType]
                    // tvFileLanguage.TranslationStatus   (TranslationStatusEnum)
                    // -----------------------------------

                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.TranslationStatus = (TranslationStatusEnum)1000000;
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "TranslationStatus"), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);


                    // -----------------------------------
                    // Is NOT Nullable
                    // [CSSPAfter(Year = 1980)]
                    // tvFileLanguage.LastUpdateDate_UTC   (DateTime)
                    // -----------------------------------

                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.LastUpdateDate_UTC = new DateTime();
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes._IsRequired, "LastUpdateDate_UTC"), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);
                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.LastUpdateDate_UTC = new DateTime(1979, 1, 1);
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes._YearShouldBeBiggerThan_, "LastUpdateDate_UTC", "1980"), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);

                    // -----------------------------------
                    // Is NOT Nullable
                    // [CSSPExist(ExistTypeName = "TVItem", ExistPlurial = "s", ExistFieldID = "TVItemID", AllowableTVtypeList = Contact)]
                    // tvFileLanguage.LastUpdateContactTVItemID   (Int32)
                    // -----------------------------------

                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.LastUpdateContactTVItemID = 0;
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes.CouldNotFind_With_Equal_, "TVItem", "LastUpdateContactTVItemID", tvFileLanguage.LastUpdateContactTVItemID.ToString()), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);

                    tvFileLanguage = null;
                    tvFileLanguage = GetFilledRandomTVFileLanguage("");
                    tvFileLanguage.LastUpdateContactTVItemID = 1;
                    tvFileLanguageService.Add(tvFileLanguage);
                    Assert.AreEqual(string.Format(CSSPServicesRes._IsNotOfType_, "LastUpdateContactTVItemID", "Contact"), tvFileLanguage.ValidationResults.FirstOrDefault().ErrorMessage);


                    // -----------------------------------
                    // Is NOT Nullable
                    // [NotMapped]
                    // tvFileLanguage.HasErrors   (Boolean)
                    // -----------------------------------

                    // No testing requied

                    // -----------------------------------
                    // Is NOT Nullable
                    // [NotMapped]
                    // tvFileLanguage.ValidationResults   (IEnumerable`1)
                    // -----------------------------------

                    // No testing requied
                }
            }
        }