public void testAddPetWithPetIdOfZero() throws Exception {
    action.setShoppingCart((ShoppingCart) mockShoppingCart.proxy());

    action.setPetId(0);
    String result = action.execute();

    assertEquals(Action.ERROR, result);
    mockPetStore.verify();
    mockShoppingCart.verify();
  }
  public void testAddNonExistingPet() throws Exception {
    action.setShoppingCart((ShoppingCart) mockShoppingCart.proxy());
    mockPetStore.expectAndReturn("getPet", new Long(123), null);

    action.setPetId(123);
    String result = action.execute();

    assertEquals(Action.ERROR, result);
    mockPetStore.verify();
    mockShoppingCart.verify();
  }
  public void testAddPet() throws Exception {
    action.setShoppingCart((ShoppingCart) mockShoppingCart.proxy());
    mockPetStore.expectAndReturn("getPet", new Long(123), pet);
    mockShoppingCart.expect("addPet", pet);

    action.setPetId(123);
    String result = action.execute();

    assertEquals(Action.SUCCESS, result);
    mockPetStore.verify();
    mockShoppingCart.verify();
  }
  protected void setUp() throws Exception {
    super.setUp();

    mockPetStore = new Mock(PetStore.class);

    action = new AddPetToShoppingCart();
    action.setPetStore((PetStore) mockPetStore.proxy());

    pet = new Pet();
    pet.setId(123);
  }
  public void testAddToNullShoppingCart() throws Exception {
    action.setShoppingCart(null);
    String result = action.execute();

    assertEquals(Action.ERROR, result);
  }