@Test
  public void testFindPetsByTags() throws Exception {
    Pet pet = createRandomPet();
    pet.setName("monster");
    pet.setStatus(Pet.StatusEnum.AVAILABLE);

    List<Tag> tags = new ArrayList<Tag>();
    Tag tag1 = new Tag();
    tag1.setName("friendly");
    tags.add(tag1);
    pet.setTags(tags);

    api.updatePet(pet);

    List<Pet> pets = api.findPetsByTags(Arrays.asList(new String[] {"friendly"}));
    assertNotNull(pets);

    boolean found = false;
    for (Pet fetched : pets) {
      if (fetched.getId().equals(pet.getId())) {
        found = true;
        break;
      }
    }
    assertTrue(found);
  }
  private Pet createRandomPet() {
    Pet pet = new Pet();
    pet.setId(TestUtils.nextId());
    pet.setName("gorilla");

    Category category = new Category();
    category.setName("really-happy");

    pet.setCategory(category);
    pet.setStatus(Pet.StatusEnum.AVAILABLE);
    List<String> photos =
        Arrays.asList(new String[] {"http://foo.bar.com/1", "http://foo.bar.com/2"});
    pet.setPhotoUrls(photos);

    return pet;
  }
  @Test
  public void testFindPetsByStatus() throws Exception {
    Pet pet = createRandomPet();
    pet.setName("programmer");
    pet.setStatus(Pet.StatusEnum.AVAILABLE);

    api.updatePet(pet);

    List<Pet> pets = api.findPetsByStatus(Arrays.asList(new String[] {"available"}));
    assertNotNull(pets);

    boolean found = false;
    for (Pet fetched : pets) {
      if (fetched.getId().equals(pet.getId())) {
        found = true;
        break;
      }
    }

    assertTrue(found);
  }