From 516d49aaf5e96e19ce7801a9379b5edf593125c7 Mon Sep 17 00:00:00 2001 From: hacklego Date: Fri, 10 Mar 2017 17:47:07 +0100 Subject: [PATCH] Added PetDataset --- .../uvigo/esei/daa/dataset/PetsDataset.java | 75 +++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 src/test/java/es/uvigo/esei/daa/dataset/PetsDataset.java diff --git a/src/test/java/es/uvigo/esei/daa/dataset/PetsDataset.java b/src/test/java/es/uvigo/esei/daa/dataset/PetsDataset.java new file mode 100644 index 0000000..b7228f1 --- /dev/null +++ b/src/test/java/es/uvigo/esei/daa/dataset/PetsDataset.java @@ -0,0 +1,75 @@ +package es.uvigo.esei.daa.dataset; + +import static java.util.Arrays.binarySearch; +import static java.util.Arrays.stream; + +import java.util.Arrays; +import java.util.function.Predicate; + +import es.uvigo.esei.daa.entities.Pet; + +public final class PetsDataset { + private PetsDataset() {} + + public static Pet[] pets() { + return new Pet[] { + new Pet(1, "Ron", "Can", "Moito", 1), + new Pet(2, "Paul", "Gato", "Alerxico", 2), + new Pet(3, "Punky", "Gato", "Alerxico", 2) + }; + } + + public static Pet[] peopleWithout(int ... ids) { + Arrays.sort(ids); + + final Predicate hasValidId = pet -> + binarySearch(ids, pet.getId()) < 0; + + return stream(pets()) + .filter(hasValidId) + .toArray(Pet[]::new); + } + + public static Pet pet(int id) { + return stream(pets()) + .filter(pet -> pet.getId() == id) + .findAny() + .orElseThrow(IllegalArgumentException::new); + } + + public static int existentId() { + return 1; + } + + public static int nonExistentId() { + return 1234; + } + + public static Pet existentPet() { + return pet(existentId()); + } + + public static Pet nonExistentPet() { + return new Pet(nonExistentId(), "Cospe", "Gaivota", "Pepera",1); + } + + public static String newName() { + return "Tor"; + } + + public static String newKind() { + return "Pe"; + } + + public static String newBreed() { + return "QueFlipas"; + } + + public static int newOwner() { + return 2; + } + + public static Pet newPet() { + return new Pet(pets().length + 1, newName(), newKind(), newBreed(), newOwner()); + } +} -- 2.18.1