Esempio n. 1
0
        public void ToggleLetterMax()
        {
            var model = new SpellingModel();

            model.table     = SpellingController.Load("test_words.csv");
            model.letterMax = 8;
            model.Setup();
            model.contentIndex = 2;
            model.Populate();
            for (int letter = 0; letter < model.letterMax; letter++)
            {
                model.Toggle(letter);
            }
            Assert.AreEqual(true, model.isLetterSelects[7]);
            model.Toggle(model.letterMax - 1);
            Assert.AreEqual(false, model.isLetterSelects[7]);
        }
Esempio n. 2
0
        public void PopulatePreviousHintAndAnswers()
        {
            var model = new SpellingModel();

            model.table = SpellingController.Load("test_words.csv");
            model.Setup();
            model.Populate();
            var prompts = model.promptAndAnswers;

            Assert.AreEqual("PART", prompts[0].answerText);
            Assert.AreEqual("TRAP", prompts[1].answerText);
            Assert.AreEqual(model.empty, prompts[0].answerTexts[0]);
            model.Hint();
            Assert.AreEqual("P", prompts[0].answerTexts[0]);
            prompts[1].ShowAnswer(true);
            Assert.AreEqual("T", prompts[1].answerTexts[0]);
            model.UpdateAnswer();
            Assert.AreEqual(true, prompts[1].isAnswerVisible);
            Assert.AreEqual(1, model.answerCount);
            for (int round = 0; round < 2; round++)
            {
                model.contentIndex = 1;
                model.Populate();
                prompts = model.promptAndAnswers;
                Assert.AreEqual("CREST", prompts[0].answerText);
                Assert.AreEqual("ERECTS", prompts[1].answerText);
                Assert.AreEqual(model.empty, prompts[0].answerTexts[0]);
                Assert.AreEqual(model.empty, prompts[1].answerTexts[0]);
                Assert.AreEqual(false, model.isLetterSelects[0]);
                model.Toggle(0);
                Assert.AreEqual(true, model.isLetterSelects[0]);
                model.contentIndex = 0;
                model.Populate();
                prompts = model.promptAndAnswers;
                Assert.AreEqual("PART", prompts[0].answerText);
                Assert.AreEqual("TRAP", prompts[1].answerText);
                Assert.AreEqual("P", prompts[0].answerTexts[0]);
                Assert.AreEqual("T", prompts[1].answerTexts[0]);
                model.UpdateAnswer();
                Assert.AreEqual(true, prompts[1].isAnswerVisible);
                Assert.AreEqual(1, model.answerCount);
                Assert.AreEqual(false, model.isLetterSelects[0]);
                model.Toggle(0);
                Assert.AreEqual(true, model.isLetterSelects[0]);
            }
        }
Esempio n. 3
0
        public void ScoreAtLeast0()
        {
            var model = new SpellingModel();

            model.table = SpellingController.Load("test_words.csv");
            model.score = 2000;
            model.Setup();
            Assert.AreEqual(2000, model.score);
            model.Populate();
            model.Toggle(1);
            Assert.AreEqual(1999, model.score);
            model.Toggle(1);
            Assert.AreEqual(1999, model.score);
            model.Toggle(1);
            Assert.AreEqual(1998, model.score);
            for (int move = 0; move < 10000; move++)
            {
                model.Toggle(1);
            }
            Assert.AreEqual(0, model.score);
        }
Esempio n. 4
0
        private void UpdateButtons()
        {
            buttons.Update();
            int letterButtonIndex = DataUtil.IndexOf(view.letterButtons, buttons.view.target);

            if (0 <= letterButtonIndex)
            {
                model.Toggle(letterButtonIndex);
            }
            else if (view.exitButton == buttons.view.target)
            {
                model.Exit();
            }
            else if (view.hintButton == buttons.view.target)
            {
                model.Hint();
            }
        }