public async Task SaveSurveyCallsAddFromQuestionTableWithQuestionType()
        {
            var mockQuestionTable = new Mock <IAzureTable <QuestionRow> >();
            var store             = new SurveyStore(new Mock <IAzureTable <SurveyRow> >().Object, mockQuestionTable.Object, new Mock <IInitializationStatusService>().Object);
            var question          = new Question {
                Type = QuestionType.SimpleText
            };
            var survey = new Survey
            {
                Title     = "title",
                Questions = new List <Question>(new[] { question })
            };
            IEnumerable <QuestionRow> actualQuestionsToAdd = null;

            mockQuestionTable.Setup(t => t.AddAsync(It.IsAny <IEnumerable <QuestionRow> >()))
            .Returns(Task.Delay(0))
            .Callback <IEnumerable <QuestionRow> >(q => actualQuestionsToAdd = q);

            await store.SaveSurveyAsync(survey);

            Assert.AreEqual(Enum.GetName(typeof(QuestionType), QuestionType.SimpleText), actualQuestionsToAdd.First().Type);
        }
        public async Task SaveSurveyCallsAddFromQuestionTableWithQuestionPossibleAnswers()
        {
            var mockQuestionTable = new Mock <IAzureTable <QuestionRow> >();
            var store             = new SurveyStore(new Mock <IAzureTable <SurveyRow> >().Object, mockQuestionTable.Object, new Mock <IInitializationStatusService>().Object);
            var question          = new Question {
                PossibleAnswers = "possible answers"
            };
            var survey = new Survey
            {
                Title     = "title",
                Questions = new List <Question>(new[] { question })
            };
            IEnumerable <QuestionRow> actualQuestionsToAdd = null;

            mockQuestionTable.Setup(t => t.AddAsync(It.IsAny <IEnumerable <QuestionRow> >()))
            .Returns(Task.Delay(0))
            .Callback <IEnumerable <QuestionRow> >(q => actualQuestionsToAdd = q);

            await store.SaveSurveyAsync(survey);

            Assert.AreEqual("possible answers", actualQuestionsToAdd.First().PossibleAnswers);
        }
Ejemplo n.º 3
0
        public async Task SaveSurveyCallsAddFromQuestionTableWithQuestionText()
        {
            var mockQuestionTable = new Mock <IAzureTable <QuestionRow> >();
            var store             = new SurveyStore(new Mock <IAzureTable <SurveyRow> >().Object, mockQuestionTable.Object, null);
            var question          = new Question {
                Text = "text"
            };
            var survey = new Survey
            {
                Title     = "title",
                Questions = new List <Question>(new[] { question })
            };
            IEnumerable <QuestionRow> actualQuestionsToAdd = null;

            mockQuestionTable.Setup(t => t.AddAsync(It.IsAny <IEnumerable <QuestionRow> >()))
            .Returns(Task.FromResult(0))
            .Callback <IEnumerable <QuestionRow> >(q => actualQuestionsToAdd = q);

            await store.SaveSurveyAsync(survey);

            Assert.AreEqual("text", actualQuestionsToAdd.First().Text);
        }