Ejemplo n.º 1
0
        public async Task Save_WithPublishDateInPastShouldNotHaveDraft()
        {
            var siteId = await MakeSite().ConfigureAwait(false);

            using var api = CreateApi();
            MyPage page = await MyPage.CreateAsync(api).ConfigureAwait(false);

            page.SiteId    = siteId;
            page.Title     = "Startpage";
            page.Text      = "Welcome";
            page.IsHidden  = true;
            page.Published = DateTime.Now.AddDays(-42);
            await PageRepository.Save(page).ConfigureAwait(false);

            var pageId = page.Id;
            var draft  = await PageRepository.GetDraftById <MyPage>(pageId).ConfigureAwait(false);

            Assert.IsNull(draft);
        }
Ejemplo n.º 2
0
        public async Task Save_PublishedAsDraft()
        {
            var siteId = await MakeSite().ConfigureAwait(false);

            using var api = CreateApi();
            MyPage page = await MyPage.CreateAsync(api).ConfigureAwait(false);

            page.SiteId    = siteId;
            page.Title     = "Startpage";
            page.Text      = "Welcome";
            page.IsHidden  = true;
            page.Published = DateTime.Now.AddDays(-1);
            await PageRepository.Save(page).ConfigureAwait(false);

            await PageRepository.SaveDraft(page).ConfigureAwait(false);

            var pageId    = page.Id;
            var retrieved = await PageRepository.GetDraftById <MyPage>(pageId).ConfigureAwait(false);

            Assert.AreEqual(pageId, retrieved.Id);
            Assert.AreEqual(siteId, retrieved.SiteId);
        }
Ejemplo n.º 3
0
        public async Task DeleteDraft()
        {
            var siteId = await MakeSite().ConfigureAwait(false);

            using var api = CreateApi();
            MyPage page = await MyPage.CreateAsync(api).ConfigureAwait(false);

            page.SiteId    = siteId;
            page.Title     = "Startpage";
            page.Text      = "Welcome";
            page.IsHidden  = true;
            page.Published = DateTime.Now;
            await PageRepository.Save(page).ConfigureAwait(false);

            await PageRepository.SaveDraft(page).ConfigureAwait(false);

            var draftId = page.Id;
            await PageRepository.DeleteDraft(draftId).ConfigureAwait(false);

            var retrieved = await PageRepository.GetDraftById <MyPage>(draftId).ConfigureAwait(false);

            Assert.IsNull(retrieved);
        }
Ejemplo n.º 4
0
        public async Task Save_UnpublishedTwiceDoesNotCreateDraft()
        {
            DateTime?unpublished = null;
            var      siteId      = await MakeSite().ConfigureAwait(false);

            using var api = CreateApi();
            MyPage page = await MyPage.CreateAsync(api).ConfigureAwait(false);

            page.SiteId    = siteId;
            page.Title     = "Startpage";
            page.Text      = "Welcome";
            page.IsHidden  = true;
            page.Published = unpublished;
            await PageRepository.Save(page).ConfigureAwait(false);

            page.Text = $"Welcome, ${Name.FirstName()}";
            await PageRepository.Save(page).ConfigureAwait(false);

            var pageId = page.Id;
            var draft  = await PageRepository.GetDraftById <MyPage>(pageId).ConfigureAwait(false);

            Assert.IsNull(draft);
        }
Ejemplo n.º 5
0
        public async Task GetDraftById_RandomId()
        {
            var retrieved = await PageRepository.GetDraftById <MyPage>(Guid.NewGuid()).ConfigureAwait(false);

            Assert.IsNull(retrieved);
        }