public async Task PublishSurveyCallsSaveFromSurveyBlobWithQuestionPossibleAnswers()
        {
            var mockSurveyInformationTable = new Mock <IAzureTable <SurveyInformationRow> >();
            var mockSurveyBlobContainer    = new Mock <IAzureBlobContainer <Models.Survey> >();

            mockSurveyInformationTable.Setup(t => t.GetByStringPropertiesAsync(It.IsAny <ICollection <KeyValuePair <string, string> > >()))
            .ReturnsAsync(new SurveyInformationRow[] { });

            var target = new SurveyManagementService(null,
                                                     (tableName) => mockSurveyInformationTable.Object,
                                                     (containerName) => mockSurveyBlobContainer.Object);
            var question = new Client.Models.Question {
                PossibleAnswers = "possible answers"
            };
            var survey = new Client.Models.Survey
            {
                Title     = "title",
                Questions = new List <Client.Models.Question>(new[] { question })
            };

            await target.PublishSurveyAsync(survey);

            mockSurveyBlobContainer.Verify(
                c => c.SaveAsync(
                    "title",
                    It.Is <Models.Survey>(s => s.Questions.First().PossibleAnswers == "possible answers")),
                Times.Once());
        }
Exemplo n.º 2
0
        internal static Models.Question ToQuestion(this Client.Models.Question question)
        {
            if (question == null)
            {
                throw new ArgumentNullException(nameof(question));
            }

            return(new Models.Question()
            {
                PossibleAnswers = question.PossibleAnswers,
                Text = question.Text,
                Type = question.Type.ToQuestionType()
            });
        }