public void RemoveLocation_ShouldRemoveCorrectLocation() { var fileId = repository.CreateMediaFile(new CreateMediaFileDto("C:/test.jpg", MediaFileType.IMAGE_TYPE, "")); var file = repository.GetMediaFile(fileId); var LocationRepository = new LocationRepository(); var expectedLocations = new List <Location>(); for (int i = 0; i < 3; ++i) { var LocationId = LocationRepository.CreateLocation(new CreateLocationDto("Location " + i, "test", testLibrary.LibraryId, -1, -1)); var Location = LocationRepository.GetLocation(LocationId); expectedLocations.Add(Location); repository.AddLocationToMediaFile(file, Location); } var deletedLocationId = LocationRepository.CreateLocation(new CreateLocationDto("Location deleted", "test", testLibrary.LibraryId, -1, -1)); var deletedLocation = LocationRepository.GetLocation(deletedLocationId); repository.AddLocationToMediaFile(file, deletedLocation); repository.RemoveLocationFromMediaFile(file, deletedLocation); var Locations = repository.GetMediaFileLocations(file); CollectionAssert.AreEquivalent(expectedLocations, Locations); }