public async Task Delete_FilterWithStateAll(DataObjectSyncanoClient client) { //given var request = new DataObjectDefinitionRequest(); request.ProjectId = TestData.ProjectId; request.CollectionId = TestData.CollectionId; var dataObjectOne = await client.New(request); var dataObjectTwo = await client.New(request); request.State = DataObjectState.Moderated; request.State = DataObjectState.Rejected; var dataObjectThree = await client.New(request); var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; deleteRequest.State = DataObjectState.All; //when var result = await client.Delete(deleteRequest); //then try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectOne.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectTwo.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectThree.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } result.ShouldBeTrue(); }
public async Task Delete_FilterByImageContent(DataObjectSyncanoClient client) { //given var request = new DataObjectDefinitionRequest(); request.ProjectId = TestData.ProjectId; request.CollectionId = TestData.CollectionId; request.ImageBase64 = TestData.ImageToBase64("smallSampleImage.png"); var dataObject = await client.New(request); var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; deleteRequest.DataId = dataObject.Id; deleteRequest.Filter = DataObjectContentFilter.Image; //when var result = await client.Delete(deleteRequest); //then try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObject.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } result.ShouldBeTrue(); }
public async Task Delete_FilterByStatePending(DataObjectSyncanoClient client) { //given var request = new DataObjectDefinitionRequest(); request.ProjectId = TestData.ProjectId; request.CollectionId = TestData.CollectionId; request.State = DataObjectState.Pending; var dataObject = await client.New(request); var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; deleteRequest.DataId = dataObject.Id; deleteRequest.State = DataObjectState.Pending; //when var result = await client.Delete(deleteRequest); //then try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObject.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } result.ShouldBeTrue(); }
public async Task RemoveParent_ByCollectionKey_WithOtherChildren(DataObjectSyncanoClient client) { //given var newParentRequest = new DataObjectDefinitionRequest(); newParentRequest.ProjectId = TestData.ProjectId; newParentRequest.CollectionId = TestData.CollectionId; var parentObject = await client.New(newParentRequest); var newOtherRequest = new DataObjectDefinitionRequest(); newOtherRequest.ProjectId = TestData.ProjectId; newOtherRequest.CollectionId = TestData.CollectionId; newOtherRequest.ParentId = parentObject.Id; var otherObject = await client.New(newOtherRequest); var newChildRequest = new DataObjectDefinitionRequest(); newChildRequest.ProjectId = TestData.ProjectId; newChildRequest.CollectionId = TestData.CollectionId; var childObject = await client.New(newChildRequest); await client.AddChild(TestData.ProjectId, parentObject.Id, childObject.Id, TestData.CollectionId); //when var result = await client.RemoveParent(TestData.ProjectId, childObject.Id, parentObject.Id, TestData.CollectionId); var getResult = await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : parentObject.Id, includeChildren : true); //then result.ShouldBeTrue(); getResult.Children.ShouldNotBeEmpty(); getResult.Children.Count.ShouldEqual(1); getResult.Children.Any(d => d.Id == otherObject.Id).ShouldBeTrue(); getResult.Children.Any(d => d.Id == childObject.Id).ShouldBeFalse(); //cleanup var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; await client.Delete(deleteRequest); }
public async Task RemoveParent_ByCollectionKey(DataObjectSyncanoClient client) { //given var newParentRequest = new DataObjectDefinitionRequest(); newParentRequest.ProjectId = TestData.ProjectId; newParentRequest.CollectionId = TestData.CollectionId; var parentObject = await client.New(newParentRequest); var newChildRequest = new DataObjectDefinitionRequest(); newChildRequest.ProjectId = TestData.ProjectId; newChildRequest.CollectionId = TestData.CollectionId; var childObject = await client.New(newChildRequest); await client.AddChild(TestData.ProjectId, parentObject.Id, childObject.Id, TestData.CollectionId); //when var result = await client.RemoveParent(TestData.ProjectId, childObject.Id, parentObject.Id, collectionKey : TestData.CollectionKey); var getResult = await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : parentObject.Id, includeChildren : true); //then result.ShouldBeTrue(); getResult.Children.ShouldBeNull(); //cleanup var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; await client.Delete(deleteRequest); }
public async Task Delete_MultipleDataIds_WithLimit(DataObjectSyncanoClient client) { //given int counter = 0; var request = new DataObjectDefinitionRequest(); request.ProjectId = TestData.ProjectId; request.CollectionId = TestData.CollectionId; var dataObjectOne = await client.New(request); var dataObjectTwo = await client.New(request); var dataObjectThree = await client.New(request); var dataIds = new List <string> { dataObjectTwo.Id, dataObjectThree.Id }; var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; deleteRequest.DataId = dataObjectOne.Id; deleteRequest.DataIds = dataIds; deleteRequest.Limit = 2; //when var result = await client.Delete(deleteRequest); //then try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectOne.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { if (!(e is SyncanoException)) { ++counter; } } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectTwo.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { if (!(e is SyncanoException)) { ++counter; } } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectThree.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { if (!(e is SyncanoException)) { ++counter; } } counter.ShouldEqual(1); result.ShouldBeTrue(); //cleanup deleteRequest.Limit = 100; await client.Delete(deleteRequest); }
public async Task Delete_MultipleDataIds(DataObjectSyncanoClient client) { //given var request = new DataObjectDefinitionRequest(); request.ProjectId = TestData.ProjectId; request.CollectionId = TestData.CollectionId; var dataObjectOne = await client.New(request); var dataObjectTwo = await client.New(request); var dataObjectThree = await client.New(request); var dataIds = new List <string> { dataObjectTwo.Id, dataObjectThree.Id }; var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; deleteRequest.DataId = dataObjectOne.Id; deleteRequest.DataIds = dataIds; //when var result = await client.Delete(deleteRequest); //then try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectOne.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectTwo.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectThree.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } result.ShouldBeTrue(); }
public async Task Delete_MultipleFolders(DataObjectSyncanoClient client) { //given var request = new DataObjectDefinitionRequest(); request.ProjectId = TestData.ProjectId; request.CollectionId = TestData.CollectionId; var folderClient = new FolderSyncanoClient(new SyncanoHttpClient(TestData.InstanceName, TestData.BackendAdminApiKey)); var folderOne = await folderClient.New(TestData.ProjectId, "folderOne", TestData.CollectionId); var folderTwo = await folderClient.New(TestData.ProjectId, "folderTwo", TestData.CollectionId); var folderThree = await folderClient.New(TestData.ProjectId, "folderThree", TestData.CollectionId); request.Folder = folderOne.Name; var dataObjectOne = await client.New(request); request.Folder = folderTwo.Name; var dataObjectTwo = await client.New(request); request.Folder = folderThree.Name; var dataObjectThree = await client.New(request); var folders = new List <string> { folderOne.Name, folderTwo.Name }; var deleteRequest = new DataObjectSimpleQueryRequest(); deleteRequest.ProjectId = TestData.ProjectId; deleteRequest.CollectionId = TestData.CollectionId; deleteRequest.Folders = folders; deleteRequest.Folder = folderThree.Name; //when var result = await client.Delete(deleteRequest); //then try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectOne.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectTwo.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } try { await client.GetOne(TestData.ProjectId, TestData.CollectionId, dataId : dataObjectThree.Id); throw new Exception("GetOne should throw an exception"); } catch (Exception e) { e.ShouldBeType <SyncanoException>(); } result.ShouldBeTrue(); //cleanup await folderClient.Delete(TestData.ProjectId, folderOne.Name, TestData.CollectionId); await folderClient.Delete(TestData.ProjectId, folderTwo.Name, TestData.CollectionId); await folderClient.Delete(TestData.ProjectId, folderThree.Name, TestData.CollectionId); }