public async void TestCreateAndDeleteDataset() { string datasetName = "TestDatasetName"; string datasetDescription = "TestDatasetDescription"; string datasetData = "0 1\n0 2\n0 3\n1 2\n1 3\n2 3\n2\t3"; var datasetInput = new DatasetInput() { Name = datasetName, Description = datasetDescription, Data = datasetData }; CreateTestDataset(datasetInput); var datasets = dbContext.Datasets.Where(d => d.Name == datasetName).ToList(); Assert.Single(datasets); Dataset dataset = datasets[0]; //Description Assert.Equal(datasetDescription, dataset.Description); //Links var expectedLinks = datasetService.OrderLinksAndRemoveDublicates(parser.Parse(new DatasetInput() { Data = datasetData })); var actualLinks = dbContext.Links.Where(l => l.DatasetId == dataset.Id).ToList(); Assert.Equal(expectedLinks.Count, dataset.LinksCount); Assert.Equal(expectedLinks.Count, actualLinks.Count); for (int i = 0; i < expectedLinks.Count; i++) { Assert.Equal(expectedLinks[i].User1Id, actualLinks[i].User1Id); Assert.Equal(expectedLinks[i].User2Id, actualLinks[i].User2Id); } //Users var users = await datasetService.GetOrderedUsers(expectedLinks); Assert.Equal(users.Count, dataset.UsersCount); //Delete dataset await datasetService.RemoveDataset(dataset.Id); datasets = dbContext.Datasets.Where(d => d.Id == dataset.Id).ToList(); Assert.Empty(datasets); actualLinks = dbContext.Links.Where(l => l.DatasetId == dataset.Id).ToList(); Assert.Empty(actualLinks); }
public async Task <ActionResult <Dataset> > Delete([FromRoute] int id) { await datasetService.RemoveDataset(id); return(StatusCode(204)); }