Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions src/main/java/rocks/zipcodewilmington/Food.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,15 @@
* @author leon on 4/19/18.
*/
public class Food {

private String brand;
private String meat;
private boolean isWet;

public Food(String brand, String meat, boolean isWet){

this.brand = brand;
this.meat = meat;
this.isWet = isWet;
}
}
8 changes: 8 additions & 0 deletions src/main/java/rocks/zipcodewilmington/animals/Cat.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,19 @@
* @author leon on 4/19/18.
*/
public class Cat extends Mammal {

public Cat(String name, Date birthDate, Integer id) {
super(name, birthDate, id);
}

public Cat (String name) { super(name); }

public Cat(Date birthDate) {
super(birthDate);
}

public String speak() {
return "meow!";
}

}
9 changes: 6 additions & 3 deletions src/main/java/rocks/zipcodewilmington/animals/Dog.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@
* @author leon on 4/19/18.
*/
public class Dog extends Mammal {
public Dog(String name, Date birthDate, Integer id) {
super(name, birthDate, id);
}

public Dog(String name, Date birthDate, Integer id) { super(name, birthDate, id); }

public Dog(String name) { super(name); }

public Dog(Date birthDate) { super(birthDate); }

public String speak() {
return "bark!";
Expand Down
13 changes: 12 additions & 1 deletion src/main/java/rocks/zipcodewilmington/animals/Mammal.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,18 @@ public Mammal(String name, Date birthDate, Integer id) {
this.id = id;
}

public Mammal(String name) {
this.name = name;
this.birthDate = null;
this.id = 0;
}

public Mammal(Date birthDate) {
this.name = "";
this.birthDate = birthDate;
this.id = 0;
}

public String getName() {
return name;
}
Expand All @@ -37,7 +49,6 @@ public void setBirthDate(Date birthDate) {
this.birthDate = birthDate;
}


public Integer getNumberOfMealsEaten() {
return eatenMeals.size();
}
Expand Down
41 changes: 41 additions & 0 deletions src/test/java/rocks/zipcodewilmington/AnimalFactoryTest.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,50 @@
package rocks.zipcodewilmington;

import org.junit.Assert;
import org.junit.Test;
import rocks.zipcodewilmington.animals.Animal;
import rocks.zipcodewilmington.animals.Cat;
import rocks.zipcodewilmington.animals.Dog;
import rocks.zipcodewilmington.animals.animal_creation.AnimalFactory;

import java.util.Date;

/**
* @author leon on 4/19/18.
*/
public class AnimalFactoryTest {
//TODO - Create Test for `Animal createDog(String name, Date birthDate)`
@Test
public void testCreateDog() {
//given
String expectedName = "Clover";
Date expectedBirthDate = new Date(2016-05-12);
int expectedId = 0;
//when
Dog testDog = AnimalFactory.createDog(expectedName, expectedBirthDate);
String actualName = testDog.getName();
Date actualBirthDate = testDog.getBirthDate();
int actualId = testDog.getId();
//then
Assert.assertEquals(expectedId, actualId);
Assert.assertEquals(expectedName, actualName);
Assert.assertEquals(expectedBirthDate, actualBirthDate);
}
//TODO - Create Test for `Animal createCat(String name, Date birthDate)`
@Test
public void testCreateCat() {
//given
String expectedName = "Jelly";
Date expectedBirthDate = new Date(2014-04-14);
int expectedId = 0;
//when
Cat testCat = AnimalFactory.createCat(expectedName, expectedBirthDate);
String actualName = testCat.getName();
Date actualBirthDate = testCat.getBirthDate();
int actualId = testCat.getId();
//then
Assert.assertEquals(expectedId, actualId);
Assert.assertEquals(expectedName, actualName);
Assert.assertEquals(expectedBirthDate, actualBirthDate);
}
}
76 changes: 76 additions & 0 deletions src/test/java/rocks/zipcodewilmington/CatHouseTest.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,88 @@
package rocks.zipcodewilmington;

import org.junit.Assert;
import org.junit.Test;
import rocks.zipcodewilmington.animals.Cat;
import rocks.zipcodewilmington.animals.animal_storage.CatHouse;

import java.util.Date;

/**
* @author leon on 4/19/18.
*/
public class CatHouseTest {
// TODO - Create tests for `void add(Cat cat)`
@Test
public void catAddTest() {
//given
String givenName = "Kevin";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Cat expectedCat = new Cat(givenName, giveBirthDate, givenId);
//when
CatHouse.add(expectedCat);
Cat actual = CatHouse.getCatById(givenId);
//then
Assert.assertEquals(expectedCat, actual);
}
// TODO - Create tests for `void remove(Integer id)`
@Test
public void testCatRemoveByID() {
//given
String givenName = "Kyo";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Cat givenCat = new Cat(givenName, giveBirthDate, givenId);
//when
CatHouse.add(givenCat);
CatHouse.remove(givenId);
Cat actual = CatHouse.getCatById(givenId);
//then
Assert.assertEquals(null, actual);
}
// TODO - Create tests for `void remove(Cat cat)`
@Test
public void testRemoveCat() {
//given
String givenName = "Kyo";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Cat givenCat = new Cat(givenName, giveBirthDate, givenId);
//when
CatHouse.add(givenCat);
CatHouse.remove(givenCat);
Cat actual = CatHouse.getCatById(givenId);
//then
Assert.assertEquals(null, actual);
}
// TODO - Create tests for `Cat getCatById(Integer id)`
@Test
public void testGetCatById () {
//given
String givenName = "Ruby";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Cat expectedCat = new Cat(givenName, giveBirthDate, givenId);
//when
CatHouse.add(expectedCat);
Cat actual = CatHouse.getCatById(givenId);
//then
Assert.assertEquals(expectedCat, actual);
}
// TODO - Create tests for `Integer getNumberOfCats()`
@Test
public void testGetNumberOfCats() {
//given
Integer expected = 2;
Date givenBirthDate1 = new Date(2021-02-01);
Date givenBirthDate2 = new Date(2020-05-15);
Cat cat1 = new Cat("Totoro", givenBirthDate1, 0);
Cat cat2 = new Cat("Cocoa", givenBirthDate2, 1);
//when
CatHouse.add(cat1);
CatHouse.add(cat2);
Integer actual = CatHouse.getNumberOfCats();
//then
Assert.assertEquals(expected, actual);
}
}
69 changes: 68 additions & 1 deletion src/test/java/rocks/zipcodewilmington/CatTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

import org.junit.Assert;
import org.junit.Test;
import rocks.zipcodewilmington.animals.Animal;
import rocks.zipcodewilmington.animals.Cat;
import rocks.zipcodewilmington.animals.Mammal;

import java.util.Date;

Expand All @@ -11,13 +13,78 @@
*/
public class CatTest {
// TODO - Create tests for `void setName(String name)`
@Test
public void testSetName() {
//given
String expectedName = "Ony";
//when
Cat newCat = new Cat(expectedName);
String actual = newCat.getName();
//then
Assert.assertEquals(expectedName, actual);
}
// TODO - Create tests for `speak`
@Test
public void testSpeak() {
//given
String expectedSpeak = "meow!";
//when
Cat newCat = new Cat(expectedSpeak);
String actual = newCat.speak();
//then
Assert.assertEquals(expectedSpeak, actual);
}
// TODO - Create tests for `setBirthDate(Date birthDate)`
@Test
public void setBirthDateTest() {
//given
Date expectedBirthDate = new Date(2019-03-15);
//when
Cat newCat = new Cat(expectedBirthDate);
Date actual = newCat.getBirthDate();
//then
Assert.assertEquals(expectedBirthDate, actual);
}
// TODO - Create tests for `void eat(Food food)`
@Test
public void testEat() {
//given
Integer expectedValue = 1;
Date givenBirthDate = new Date(2020-01-22);
Cat newCat = new Cat("Tipsy", givenBirthDate, 5);
//when
Food newFood = new Food("Blue Buffalo", "tuna", false);
newCat.eat(newFood);
//then
Integer actualValue = newCat.getNumberOfMealsEaten();
Assert.assertEquals(expectedValue, actualValue);

}
// TODO - Create tests for `Integer getId()`
@Test
public void testGetId() {
//given
Integer expectedValue = 4;
Date givenBirthDate = new Date(2018-07-04);
Cat newCat = new Cat("Felix", givenBirthDate, 4);
//when
Integer actualValue = newCat.getId();
//then
Assert.assertEquals(expectedValue, actualValue);
}
// TODO - Create test to check Animal inheritance; google search `java instanceof keyword`
// TODO - Create test to check Mammal inheritance; google search `java instanceof keyword`
@Test
public void testAnimalInheritance() {
Cat newCat = new Cat("Frederick-Sama", null, null);
Assert.assertTrue(newCat instanceof Animal);

}
// TODO - Create test to check Mammal inheritance; google search `java instanceof keyword`
@Test
public void testMammalInheritance() {
Cat newCat = new Cat("Binks", null, null);
Assert.assertTrue(newCat instanceof Mammal);
}

@Test
public void constructorTest() {
Expand Down
57 changes: 57 additions & 0 deletions src/test/java/rocks/zipcodewilmington/DogHouseTest.java
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
package rocks.zipcodewilmington;

import org.junit.Assert;
import org.junit.Test;
import rocks.zipcodewilmington.animals.Cat;
import rocks.zipcodewilmington.animals.Dog;
import rocks.zipcodewilmington.animals.animal_creation.AnimalFactory;
import rocks.zipcodewilmington.animals.animal_storage.CatHouse;
import rocks.zipcodewilmington.animals.animal_storage.DogHouse;

import java.util.Date;
Expand All @@ -12,9 +15,63 @@
*/
public class DogHouseTest {
// TODO - Create tests for `void add(Dog dog)`
@Test
public void testAddDogs() {
//given
String givenName = "Shigure";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Dog expectedDog = new Dog(givenName, giveBirthDate, givenId);
//when
DogHouse.add(expectedDog);
Dog actual = DogHouse.getDogById(givenId);
//then
Assert.assertEquals(expectedDog, actual);
}
// TODO - Create tests for `void remove(Integer id)`
@Test
public void testCatRemoveByID() {
//given
String givenName = "Cyan";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Dog givenDog = new Dog(givenName, giveBirthDate, givenId);
//when
DogHouse.add(givenDog);
DogHouse.remove(givenId);
Dog actual = DogHouse.getDogById(givenId);
//then
Assert.assertEquals(null, actual);
}
// TODO - Create tests for `void remove(Dog dog)`
@Test
public void testRemoveCat() {
//given
String givenName = "Loki";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Dog givenDog = new Dog(givenName, giveBirthDate, givenId);
//when
DogHouse.add(givenDog);
DogHouse.remove(givenDog);
Dog actual = DogHouse.getDogById(givenId);
//then
Assert.assertEquals(null, actual);
}
// TODO - Create tests for `Dog getDogById(Integer id)`
@Test
public void testGetCatById () {
//given
String givenName = "Armin";
Date giveBirthDate = new Date(2020-01-19);
Integer givenId = 0;
Dog expectedDog = new Dog(givenName, giveBirthDate, givenId);
//when
DogHouse.add(expectedDog);
Dog actual = DogHouse.getDogById(givenId);
//then
Assert.assertEquals(expectedDog, actual);
}
// TODO - Create tests for `Integer getNumberOfDogs()`

@Test
Expand Down
Loading