Example #1
0
        public async Task GET()
        {
            Guid            testId          = Guid.Empty;
            TranslationEdit translationEdit = null;
            TranslationList allTranslations = null;

            var isAsyncComplete = false;
            var hasError        = false;

            EnqueueConditional(() => isAsyncComplete);
            await Setup();

            try
            {
                allTranslations = await TranslationList.GetAllAsync();

                testId          = allTranslations.First().Id;
                translationEdit = await TranslationEdit.GetTranslationEditAsync(testId);
            }
            catch
            {
                hasError = true;
            }
            finally
            {
                EnqueueCallback(
                    () => Assert.IsFalse(hasError),
                    () => Assert.IsNotNull(translationEdit),
                    () => Assert.IsTrue(translationEdit.Phrases.Count >= 2),
                    () => Assert.AreEqual(testId, translationEdit.Id),

                    //KEEP THIS LAST IN THE CALLBACKS
                    () => Teardown()
                    );

                EnqueueTestComplete();
                isAsyncComplete = true;
            }
        }
Example #2
0
        public async Task TRANSLATION_CREATOR_NEW()
        {
            TranslationEdit newTranslationEdit           = null;
            TranslationEdit savedTranslationEdit         = null;
            TranslationEdit confirmedSaveTranslationEdit = null;

            Business.TranslationCreator creator = null;

            string phraseAText = "Test Phrase A Text.  This is phrase A in English.";
            string phraseBText = "Test Phrase BBBB Text.  This is phrase B in Spanish.";
            //PhraseEdit phraseA = null;
            //PhraseEdit phraseB = null;

            var isAsyncComplete = false;
            var hasError        = false;

            EnqueueConditional(() => isAsyncComplete);
            await Setup();

            try
            {
                ////CREATE THE TWO PHRASES
                //phraseA = await PhraseEdit.NewPhraseEditAsync(_ServerEnglishLang.Text);
                //phraseA.Text = phraseAText;
                //phraseA = await phraseA.SaveAsync();

                //phraseB = await PhraseEdit.NewPhraseEditAsync(_ServerSpanishLang.Text);
                //phraseB.Text = phraseBText;
                //phraseB = await phraseB.SaveAsync();

                //AT THIS POINT, WE HAVE TWO PHRASES THAT WOULD BE EQUIVALENT PHRASES (A TRANSLATION).

                //NEW
                //var criteria = new Business.Criteria.ListOfPhrasesCriteria(phraseA, phraseB);
                //var creator = await Business.TranslationCreator.CreateNewAsync(criteria);
                var A = new Tuple <string, string>();
                A.Item1 = phraseAText;
                A.Item2 = _ServerEnglishLang.Text;

                var B = new Tuple <string, string>();
                B.Item1 = phraseBText;
                B.Item2 = _ServerSpanishLang.Text;
                var criteria = new Business.Criteria.PhraseTextLanguageTextPairsCriteria(A, B);
                creator = await Business.TranslationCreator.CreateNewAsync(criteria);

                newTranslationEdit = creator.Translation;

                #region old
                //Business.TranslationCreator.CreateNewAsync(
                //    //EDIT
                //    newTranslationEdit.Phrases.AddedNew += (s5, r5) =>
                //      {
                //        if (phraseA == null)
                //        {
                //          phraseA = r5.NewObject;
                //          phraseA.Id = Guid.NewGuid();
                //          phraseA.Text = phraseAText;

                //          phraseA.LanguageId = SeedData.Ton.EnglishId;
                //        }
                //        else
                //        {
                //          phraseB = r5.NewObject;
                //          phraseB.Id = Guid.NewGuid();
                //          phraseB.Text = phraseBText;
                //          phraseB.LanguageId = SeedData.Ton.SpanishId;
                //        }
                //      };

                //newTranslationEdit.Phrases.AddNew();
                //newTranslationEdit.Phrases.AddNew();
                #endregion
                //SAVE
                savedTranslationEdit = await newTranslationEdit.SaveAsync();

                //GET (CONFIRM SAVE)
                confirmedSaveTranslationEdit =
                    await TranslationEdit.GetTranslationEditAsync(savedTranslationEdit.Id);
            }
            catch
            {
                hasError = true;
            }
            finally
            {
                EnqueueCallback(
                    () => Assert.IsFalse(hasError),

                    () => Assert.IsNotNull(newTranslationEdit),
                    () => Assert.IsNotNull(savedTranslationEdit),
                    () => Assert.IsNotNull(confirmedSaveTranslationEdit),
                    () => Assert.IsTrue(confirmedSaveTranslationEdit.Phrases.Count >= 2),
                    () => Assert.AreEqual(savedTranslationEdit.Id, confirmedSaveTranslationEdit.Id),
                    () => Assert.AreEqual(savedTranslationEdit.Phrases[0].Text, phraseAText),
                    () => Assert.AreEqual(savedTranslationEdit.Phrases[1].Text, phraseBText),

                    //KEEP THIS LAST IN THE CALLBACKS
                    () => Teardown()
                    );

                EnqueueTestComplete();
                isAsyncComplete = true;
            }
        }