implements rideable {
+
+
+ public Tractor()
+ {
+ super();
+ }
+
+
+ public boolean harvest(Crop p)
+ {
+ return true;
+ }
+
+}
diff --git a/src/main/java/Vehicle.java b/src/main/java/Vehicle.java
new file mode 100644
index 0000000..d1fe1e5
--- /dev/null
+++ b/src/main/java/Vehicle.java
@@ -0,0 +1,37 @@
+public class Vehicle implements rideable, NoiseMaker {
+
+
+p rider;
+
+ boolean isMounted = false;
+
+
+public String makeNoise()
+{
+ return "Vroom Vroom";
+}
+
+public void setRider(p riderr)
+{
+ this.rider = riderr;
+}
+
+public p getRider()
+{
+ return rider;
+}
+
+
+ public boolean isMounted() {
+ return isMounted;
+ }
+
+ public void setMounted(boolean mounted) {
+ isMounted = mounted;
+ }
+
+
+ public String MakeNoise() {
+ return "Vroom Vroom";
+ }
+}
diff --git a/src/main/java/com/zipcodewilmington/froilansfarm/Storage.java b/src/main/java/com/zipcodewilmington/froilansfarm/Storage.java
new file mode 100644
index 0000000..7324271
--- /dev/null
+++ b/src/main/java/com/zipcodewilmington/froilansfarm/Storage.java
@@ -0,0 +1,22 @@
+package com.zipcodewilmington.froilansfarm;
+
+
+import java.util.ArrayList;
+
+public abstract class Storage {
+ ArrayList storage;
+
+
+ public void addT(T t) {
+ storage.add(t);
+ }
+
+
+ public ArrayList getStorage() {
+ return storage;
+ }
+
+ public T get(int index) {
+ return storage.get(index);
+ }
+}
diff --git a/src/main/java/rideable.java b/src/main/java/rideable.java
new file mode 100644
index 0000000..99ef586
--- /dev/null
+++ b/src/main/java/rideable.java
@@ -0,0 +1,7 @@
+public interface rideable {
+
+
+
+
+
+}
diff --git a/src/test/java/ChickenTest.java b/src/test/java/ChickenTest.java
new file mode 100644
index 0000000..040fbec
--- /dev/null
+++ b/src/test/java/ChickenTest.java
@@ -0,0 +1,43 @@
+import org.junit.*;
+
+
+public class ChickenTest {
+
+
+ @Test
+ public void TestYieldTrue()
+ {
+ //Given
+ Chicken chicken = new Chicken("Jeff");
+ boolean trueee = true;
+
+ //When
+ EdibleEgg food = (EdibleEgg) chicken.yield(trueee);
+
+ //Then
+ Assert.assertTrue(food instanceof EdibleEgg);
+
+ }
+
+
+
+ @Test
+ public void TestYieldFalse()
+ {
+ //Given
+ Chicken chicken = new Chicken("Jeff");
+ boolean falseee = false;
+
+ //When
+ NonEdibleEgg food = (NonEdibleEgg) chicken.yield(false);
+
+ //Then
+ Assert.assertTrue(food instanceof NonEdibleEgg);
+
+ }
+
+
+
+
+
+}
diff --git a/src/test/java/FarmTests.java b/src/test/java/FarmTests.java
new file mode 100644
index 0000000..e4808ba
--- /dev/null
+++ b/src/test/java/FarmTests.java
@@ -0,0 +1,181 @@
+import org.junit.Assert;
+import org.junit.Test;
+
+import java.util.ArrayList;
+
+public class FarmTests {
+
+
+ @Test
+ public void addStableTest() {
+ //Given
+ Farm farm = new Farm();
+ //When
+ boolean expected = true;
+ boolean actual = farm.addStable(new Stable());
+ //Then
+ Assert.assertEquals(expected, actual);
+ }
+
+ @Test
+ public void removeStableTest() {
+ //Given
+ Farm farm = new Farm();
+ boolean expected = true;
+ //When
+ farm.addStable(new Stable());
+ boolean actual = farm.removeStable(0);
+ //Then
+ Assert.assertEquals(expected, actual);
+ }
+
+ @Test
+ public void removeCoopTest() {
+ //Given
+ Farm farm = new Farm();
+ boolean expected = true;
+ //When
+ farm.addCoop(new ChickenCoop());
+ boolean actual = farm.removeCoop(0);
+ //Then
+ Assert.assertEquals(expected, actual);
+ }
+
+ @Test
+ public void removeFarmHouse() {
+ //Given
+ Farm farm = new Farm();
+ //When
+ farm.removeFarmHouse();
+ //Then
+ Assert.assertNull(farm.getFarmhouse());
+ }
+
+ @Test
+ public void TestCheckHoses() {
+ Farm farm = new Farm();
+
+ boolean expected = true;
+ boolean actual = farm.checkHorses(farm.getStables());
+ }
+
+ @Test
+ public void testgetFields()
+ {
+ //Given
+ Farm farm = new Farm();
+
+ //When
+ ArrayList fields = farm.getfields();
+
+ //Then
+ Assert.assertNotNull(fields);
+ }
+
+ @Test
+ public void testGetVehicles()
+ {
+ //Given
+ Farm farm = new Farm();
+
+ //When
+ ArrayListvehicles = farm.getVehicles();
+
+ //Then
+ Assert.assertNotNull(vehicles);
+ }
+
+
+ @Test
+ public void testgetDayOfWeek()
+ {
+ //Given
+ Farm farm = new Farm();
+
+ //When
+ String ret = farm.getDayOfWeek();
+
+ //Then
+ Assert.assertNotNull(ret);
+ }
+
+ @Test
+ public void testSetDayOfWeek()
+ {
+ //Given
+ Farm farm = new Farm();
+ //When
+ farm.SetDayOfWeek("Friday");
+ //Then
+ Assert.assertEquals("Friday",farm.getDayOfWeek());
+ }
+
+ @Test
+ public void testAddField()
+ {
+ //Given
+ Farm farm = new Farm();
+ //When
+ boolean Actual = farm.addFields(new Field());
+
+ //Then
+ Assert.assertTrue(Actual);
+
+ }
+
+
+ @Test
+ public void testResetHorses()
+ {
+ Farm farm = new Farm();
+
+ Boolean actual = farm.resetHorses(farm.getStables());
+
+ Assert.assertTrue(actual);
+ }
+
+
+
+ @Test
+ public void addCoopTest()
+ {
+ //Given
+ Farm farm = new Farm();
+ //When
+ boolean expected = true;
+ boolean actual= farm.addCoop(new ChickenCoop());
+ //Then
+ Assert.assertEquals(expected,actual);
+ }
+
+
+ @Test
+ public void getFarmHouse()
+ {
+ Farm farm = new Farm();
+ Farmhouse newFarmHouse = farm.getFarmhouse();
+ Assert.assertNotNull(newFarmHouse);
+ }
+
+
+
+ @Test
+ public void getStables()
+ {
+ Farm farm = new Farm();
+ ArrayList stables = farm.getStables();
+ Assert.assertEquals(stables.size(),0);
+ }
+
+
+ @Test
+ public void getCoopsTest()
+ {
+ Farm farm = new Farm();
+ ArrayList chickencoops = farm.getCoops();
+ Assert.assertEquals(chickencoops.size(),0);
+ }
+
+
+
+}
diff --git a/src/test/java/HorseTests.java b/src/test/java/HorseTests.java
new file mode 100644
index 0000000..a414c6f
--- /dev/null
+++ b/src/test/java/HorseTests.java
@@ -0,0 +1,39 @@
+import org.junit.*;
+
+
+
+public class HorseTests {
+
+
+@Test
+public void makeNoiseTest()
+{
+ //Given
+ Horse horse = new Horse("Jeff");
+ //When
+ String actual = horse.MakeNoise();
+ //Then
+ String expected = "MurMurMur";
+ Assert.assertEquals(actual,expected);
+}
+@Test
+ public void testEat()
+{
+ //Given
+ Horse horse = new Horse("Jeff");
+ //When
+ horse.eat(new EdibleEarCorn());
+ //Then
+ Assert.assertTrue(horse.getInStomach().size()>0);
+}
+
+
+
+
+
+
+
+
+
+
+}
diff --git a/src/test/java/com/zipcodewilmington/froilansfarm/MainApplicationTest.java b/src/test/java/MainApplicationTest.java
similarity index 62%
rename from src/test/java/com/zipcodewilmington/froilansfarm/MainApplicationTest.java
rename to src/test/java/MainApplicationTest.java
index 1a971b7..ef66d28 100644
--- a/src/test/java/com/zipcodewilmington/froilansfarm/MainApplicationTest.java
+++ b/src/test/java/MainApplicationTest.java
@@ -1,5 +1,3 @@
-package com.zipcodewilmington.froilansfarm;
-
/**
* Created by leon on 2/26/18.
*/
diff --git a/src/test/java/StorageTest.java b/src/test/java/StorageTest.java
new file mode 100644
index 0000000..524eccf
--- /dev/null
+++ b/src/test/java/StorageTest.java
@@ -0,0 +1,154 @@
+import com.zipcodewilmington.froilansfarm.Storage;
+import org.junit.Test;
+
+import java.lang.reflect.Field;
+import java.util.List;
+
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+class StorageTest {
+
+ @Test
+ public void testAddPersonToChickenCoop(){
+ ChickenCoop chickenCoop = new ChickenCoop();
+ Chicken chickens = new Chicken("littleChick");
+
+ chickenCoop.addChicken(chickens);
+
+ List chickensInChickenCoop = chickenCoop.getChickens();
+
+ assertEquals("littleChick", chickensInChickenCoop.get(0).getName());
+
+ }
+
+ @Test
+ public void testAddPersonToFarmHouse(){
+ Farmhouse farmhouse = new Farmhouse();
+ Farmer people = new Farmer("Froilan");
+
+ farmhouse.addPerson(people);
+
+ List peopleInFarm = farmhouse.getpeople();
+
+ assertEquals("Froilan", peopleInFarm.get(0).getName());
+
+ }
+
+ @Test
+ public void testAddHorseToStable(){
+ Stable stable = new Stable();
+ Horse horses = new Horse("bigHorse");
+
+ stable.addHorse(horses);
+
+ List horsesInStable = stable.getHorses();
+
+ assertEquals("bigHorse", horsesInStable.get(0).getName());
+
+ }
+
+
+ @Test
+ public void testGetHorse(){
+ Stable stable = new Stable();
+ Horse horses1 = new Horse("bigHorse");
+ Horse horses2 = new Horse("SmallHorse");
+
+ stable.addHorse(horses1);
+ stable.addHorse(horses2);
+
+ List horsesInStable = stable.getHorses();
+ int indexOfHorse2 = horsesInStable.indexOf(horses2);
+
+ assertEquals(1, indexOfHorse2);
+
+
+
+ }
+
+ @Test
+ public void testGetPerson(){
+ Farmhouse farmhouse = new Farmhouse();
+ Farmer people1 = new Farmer("Froilan");
+ Farmer people2 = new Farmer("Frolinda");
+
+ farmhouse.addPerson(people1);
+ farmhouse.addPerson(people2);
+
+ List peopleInFarm = farmhouse.getpeople();
+ int indexOfPerson2 = peopleInFarm.indexOf(people2);
+
+ assertEquals(1, indexOfPerson2);
+
+
+ }
+
+ @Test
+ public void testGetChicken(){
+ ChickenCoop chickenCoop = new ChickenCoop();
+ Chicken chickens1 = new Chicken("Chick1");
+ Chicken chickens2 = new Chicken("Chick2");
+
+ chickenCoop.addChicken(chickens1);
+ chickenCoop.addChicken(chickens2);
+
+ List chickensInFarm = chickenCoop.getChickens();
+ int indexOfChicken2 = chickensInFarm.indexOf(chickens2);
+
+ assertEquals(1, indexOfChicken2);
+
+
+ }
+
+
+ @Test
+ public void testGetFieldChickenCoop() throws NoSuchFieldException, IllegalAccessException {
+ ChickenCoop chickenCoop = new ChickenCoop();
+ Chicken chickens = new Chicken("littleChick");
+
+ chickenCoop.addChicken(chickens);
+
+ Chicken chickensInChickenCoop = chickenCoop.getChicken(0);
+ Field nameField = Chicken.class.getDeclaredField("name");
+ nameField.setAccessible(true);
+ String nameValue = (String) nameField.get(chickensInChickenCoop.getName());
+
+ assertEquals("littleChick", nameValue);
+
+ }
+
+ @Test
+ public void testGetFieldFarmHouse() throws NoSuchFieldException, IllegalAccessException {
+ Farmhouse farmhouse = new Farmhouse();
+ Farmer people = new Farmer("Froilan");
+
+ farmhouse.addPerson(people);
+
+ List peopleInFarm = farmhouse.getpeople();
+ Field nameField = Person.class.getDeclaredField("name");
+ nameField.setAccessible(true);
+ String nameValue = (String) nameField.get(peopleInFarm.get(0));
+
+ assertEquals("Froilan", nameValue);
+
+ }
+
+ @Test
+ public void testGetFieldStable() throws NoSuchFieldException, IllegalAccessException {
+ Stable stable = new Stable();
+ Horse horses = new Horse("bigHorse");
+
+ stable.addHorse(horses);
+
+ List horsesInStable = stable.getHorses();
+ Field nameField = Horse.class.getDeclaredField("name");
+ nameField.setAccessible(true);
+ String nameValue = (String) nameField.get(horsesInStable.get(0));
+
+ assertEquals("bigHorse", nameValue);
+
+ }
+
+
+
+}
\ No newline at end of file
diff --git a/src/test/java/VehicleTest.java b/src/test/java/VehicleTest.java
new file mode 100644
index 0000000..aea16cb
--- /dev/null
+++ b/src/test/java/VehicleTest.java
@@ -0,0 +1,112 @@
+import org.junit.Assert;
+import org.junit.Test;
+public class VehicleTest {
+ @Test
+ public void setRiderTest() {
+ //Given
+ Vehicle vehicle = new Vehicle();
+
+ //When
+ Farmer person1 = new Farmer("Froilan");
+ vehicle.setRider(person1);
+
+
+ //Then
+ Farmer expected = (Farmer) vehicle.getRider();
+
+ Assert.assertEquals(person1,expected);
+
+
+ }//
+
+ @Test
+ public void makeNoiseTest() {
+ //Given
+ Vehicle vehicle = new Vehicle();
+
+ //When
+ String actual = vehicle.makeNoise();
+
+ //Then
+ String expected = "Vroom Vroom";
+ Assert.assertEquals(expected, actual);
+
+
+ }
+
+ @Test
+ public void setisMountedTest() {
+
+ //Given
+ Vehicle vehicle = new Vehicle();
+ Farmer person = new Farmer("Froilan");
+ boolean truee = true;
+
+ //When
+ Boolean actual = vehicle.isMounted();
+
+ //Then
+ boolean expected = true;
+ Assert.assertEquals(expected, actual);
+
+ }
+
+ @Test
+ public void TractorTest() {
+
+ FarmVehicle tractor = new Tractor();
+ Farm farm = new Farm();
+
+ Boolean actual = tractor.operate(farm);
+
+ Assert.assertTrue(actual);
+
+ }
+
+ @Test
+ public void TractorHarvestTest() {
+ Tractor tractor = new Tractor();
+ Farm farm = new Farm();
+ boolean truee = true;
+
+
+ boolean actual = tractor.harvest(new Crop());
+
+
+ Assert.assertTrue(actual);
+
+ }
+
+ @Test
+ public void TractorSetRiderTest() {
+ //Given
+ FarmVehicle tractor = new Tractor();
+ Farm farm = new Farm();
+ Person farmer = new Farmer("Froilan");
+
+
+ //When
+ tractor.setRider(farmer);
+
+ //Then
+ Farmer expected = (Farmer) tractor.getRider();
+
+ Assert.assertEquals(expected, farmer);
+
+ }
+ @Test
+ public void CropDusterFertilizeTest(){
+
+ CropDuster cropduster = new CropDuster();
+ Pilot pilot = new Pilot();
+ CropRow crops = new CropRow();
+
+
+ boolean actual = cropduster.fertilize(crops);
+
+ Assert.assertFalse(actual);
+
+ }
+
+
+}
\ No newline at end of file