public async Task DetachShouldCopyBlocks() { using (var api = CreateApi()) { var originalPage = await api.Pages.GetByIdAsync <MyPage>(PAGE_7_ID); var copy = await api.Pages.GetByIdAsync <MyPage>(PAGE_8_ID); var originalBlock = new Extend.Blocks.TextBlock { Id = Guid.NewGuid(), Body = "test", }; originalPage.Blocks.Add(originalBlock); await api.Pages.SaveAsync(originalPage); await api.Pages.DetachAsync(copy); var p = await api.Pages.GetByIdAsync <MyPage>(PAGE_8_ID); Assert.Collection(p.Blocks, e => { Assert.NotEqual(e.Id, originalBlock.Id); var eBlock = Assert.IsType <Extend.Blocks.TextBlock>(e); Assert.Equal(eBlock.Body.Value, originalBlock.Body.Value); }); } }
public void DetachShouldCopyBlocks() { using (var api = new Api(GetDb(), new ContentServiceFactory(services), storage, cache)) { var originalPage = api.Pages.GetById <MyPage>(PAGE_7_ID); var copy = api.Pages.GetById <MyPage>(PAGE_8_ID); var originalBlock = new Extend.Blocks.TextBlock { Id = Guid.NewGuid(), Body = "test", }; originalPage.Blocks.Add(originalBlock); api.Pages.Save(originalPage); api.Pages.Detach(copy); var p = api.Pages.GetById <MyPage>(PAGE_8_ID); Assert.Collection(p.Blocks, e => { Assert.NotEqual(e.Id, originalBlock.Id); var eBlock = Assert.IsType <Extend.Blocks.TextBlock>(e); Assert.Equal(eBlock.Body.Value, originalBlock.Body.Value); }); } }