Пример #1
0
        public void DeleteSurveyByTenantAndSlugNameDeletesSurveyWithTenantAndSlugNameInRowKeyFromSurveyTable()
        {
            string expectedRowKey = string.Format(CultureInfo.InvariantCulture, "{0}_{1}", "tenant", "slug-name");
            var    surveyRow      = new SurveyRow {
                RowKey = expectedRowKey
            };
            var otherSurveyRow = new SurveyRow {
                RowKey = "other_row_key"
            };
            var surveyRowsForTheQuery = new[] { surveyRow, otherSurveyRow };
            var mockSurveyTable       = new Mock <IAzureTable <SurveyRow> >();

            mockSurveyTable.SetupGet(t => t.Query).Returns(surveyRowsForTheQuery.AsQueryable());
            mockSurveyTable.Setup(t => t.GetRetryPolicyFactoryInstance()).Returns(new DefaultRetryPolicyFactory());
            var mockQuestionTable = new Mock <IAzureTable <QuestionRow> >();

            mockQuestionTable.SetupGet(t => t.Query).Returns((new QuestionRow[] { }).AsQueryable());
            mockQuestionTable.Setup(t => t.GetRetryPolicyFactoryInstance()).Returns(new DefaultRetryPolicyFactory());
            var store = new SurveyStore(mockSurveyTable.Object, mockQuestionTable.Object, null);

            store.DeleteSurveyByTenantAndSlugName("tenant", "slug-name");

            mockSurveyTable.Verify(t => t.Delete(It.Is <SurveyRow>(s => s.RowKey == expectedRowKey)));
        }