Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

changes to test cases #63

Open
wants to merge 40 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
99b9140
add eater, animal, horse, stable (edible params commented out)
Luciaw1219 May 16, 2023
4a455ff
add junit to pom.xml and specify java version 19
Luciaw1219 May 16, 2023
a50dbe1
add rideable to horse commented out until rideable is created
Luciaw1219 May 16, 2023
cb88a1e
Mohammed amine is cool
May 17, 2023
0ed25cf
classes done
mouad1937 May 17, 2023
aa24738
done
mouad1937 May 17, 2023
2a02478
Mohammed amine is cool
May 18, 2023
7f47c88
saved
Dariuss13 May 19, 2023
9f74799
Merge pull request #1 from Luciaw1219/lucia2
Luciaw1219 May 19, 2023
54a016b
Merge pull request #2 from Luciaw1219/Lucia
Luciaw1219 May 19, 2023
c971c01
Merge branch 'master' of github.com:Luciaw1219/FarmerFroilan into Ami…
May 19, 2023
9edbd5e
Merge branch 'master' of github.com:Luciaw1219/FarmerFroilan into Sprye
Dariuss13 May 19, 2023
e24dbbf
Merge pull request #5 from Luciaw1219/Sprye
Luciaw1219 May 19, 2023
2ab38c2
Merge branch 'master' of github.com:Luciaw1219/FarmerFroilan into Ami…
May 19, 2023
b39f409
Merge pull request #4 from Luciaw1219/AmineWork
Luciaw1219 May 19, 2023
8057a3b
organize files, resolve dependencies
Luciaw1219 May 20, 2023
89fef60
Merge pull request #7 from Luciaw1219/Lucia
Luciaw1219 May 20, 2023
18a3c79
save
Dariuss13 May 20, 2023
258a153
Merge pull request #8 from Luciaw1219/Ahlafi
Dariuss13 May 20, 2023
dcde73b
remove ds store, move vehicles into vehicles pacage, add test classes…
Luciaw1219 May 21, 2023
a18098b
Merge pull request #9 from Luciaw1219/Lucia
Dariuss13 May 21, 2023
ea6df1b
new save
Dariuss13 May 21, 2023
0d07652
save1
Dariuss13 May 21, 2023
0fd42d0
Merge branch 'master' of https://github.com/Luciaw1219/FarmerFroilan …
mouad1937 May 21, 2023
4ed7b33
Merge pull request #12 from Luciaw1219/Ahlafi
Luciaw1219 May 21, 2023
fb409fe
saved2
Dariuss13 May 21, 2023
56df4da
Merge pull request #10 from Luciaw1219/Sprye
Luciaw1219 May 21, 2023
52cab5b
add import of crop to croprow, fix stable array, remove yeild method …
Luciaw1219 May 21, 2023
a784acf
Merge pull request #13 from Luciaw1219/Lucia
Luciaw1219 May 21, 2023
de18390
create plants and food packages
Luciaw1219 May 21, 2023
69f1e85
correct mistake for harvesting and yeilding
Luciaw1219 May 21, 2023
cfcc2a8
uncomment croprow for farmer
Luciaw1219 May 21, 2023
238eae5
uncomment croprow for farmer
Luciaw1219 May 21, 2023
ed956b3
Merge pull request #14 from Luciaw1219/Lucia
Luciaw1219 May 21, 2023
0067033
finish
mouad1937 May 21, 2023
282dc2e
classes done
mouad1937 May 22, 2023
247de4d
Merge branch 'master' into Ahlafi
Luciaw1219 May 22, 2023
a31d189
Merge pull request #16 from Luciaw1219/Ahlafi
Luciaw1219 May 22, 2023
8e64d32
resolve merge conflicts
Luciaw1219 May 22, 2023
accf6c3
Merge pull request #17 from Luciaw1219/Lucia
Luciaw1219 May 22, 2023
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
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -103,4 +103,8 @@ target/*

.project
.classpath
.settings
.settings

# other
.idea
.DS_STORE
16 changes: 15 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,19 @@
<artifactId>froilans-farm</artifactId>
<version>1.0-SNAPSHOT</version>

<properties>
<maven.compiler.release>19</maven.compiler.release>
<maven.compiler.source>19</maven.compiler.source>
<maven.compiler.target>19</maven.compiler.target>
</properties>

</project>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>5.9.3</version>
<scope>test</scope>
</dependency>
</dependencies>

</project>
52 changes: 52 additions & 0 deletions src/main/java/com/zipcodewilmington/froilansfarm/CropRow.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
package com.zipcodewilmington.froilansfarm;

import com.zipcodewilmington.froilansfarm.plants.Crop;

import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;

public class CropRow {

private final List<Crop> row = new LinkedList<>();

public CropRow() {}

public CropRow(Crop crop) {
this.row.add(crop);
}

public CropRow(Crop[] crops) {
this.row.addAll(Arrays.asList(crops));
}

public CropRow(List<Crop> crops) {
this.row.addAll(crops);
}

public List<Crop> getCrops() {
return this.row;
}

public void store(Crop crop) {
this.row.add(crop);
}

public void store(Crop[] crops) {
this.row.addAll(Arrays.asList(crops));
}

public void store(List<Crop> crops) {
this.row.addAll(crops);
}


public boolean fertilize() {
for (Crop crop : this.row) {
crop.fertilize();
}

return false;
}

}
26 changes: 26 additions & 0 deletions src/main/java/com/zipcodewilmington/froilansfarm/Farm.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package com.zipcodewilmington.froilansfarm;

import java.util.ArrayList;
import java.util.List;

public class Farm {

private List<Field> fields = new ArrayList<>();

public Farm(List<Field> fields) {
this.fields.addAll(fields);
}

public Farm(Field field) {
this.fields.add(field);
}

public List<Field> getFields() {
return this.fields;
}

public void addFields(Field... fields) {
this.fields.addAll(List.of(fields));
}

}
38 changes: 38 additions & 0 deletions src/main/java/com/zipcodewilmington/froilansfarm/Farmer.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
package com.zipcodewilmington.froilansfarm;

import com.zipcodewilmington.froilansfarm.interfaces.Botanist;
import com.zipcodewilmington.froilansfarm.interfaces.Edible;
import com.zipcodewilmington.froilansfarm.interfaces.Rideable;
import com.zipcodewilmington.froilansfarm.interfaces.Rider;
import com.zipcodewilmington.froilansfarm.plants.Crop;

public class Farmer extends Person implements Botanist, Rider {

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

@Override
public void plant(CropRow cropRow, Crop crop) {
cropRow.store(crop);
}

@Override
public void makeNoise() {
System.out.println("howdy");
}

@Override
public void mount(Rideable rideable) {
}

@Override
public void dismount(Rideable rideable) {
}

@Override
public void eat(Edible edible) {
System.out.println("yum yum");
}

}
41 changes: 41 additions & 0 deletions src/main/java/com/zipcodewilmington/froilansfarm/Field.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
package com.zipcodewilmington.froilansfarm;

import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;

public class Field {

private final List<CropRow> cropRows = new LinkedList<>();

public Field() {}

public Field(CropRow croprow) {
this.cropRows.add(croprow);
}

public Field(CropRow[] cropRows) {
this.cropRows.addAll(Arrays.asList(cropRows));
}

public Field(List<CropRow> cropRows) {
this.cropRows.addAll(cropRows);
}

public List<CropRow> getCropRows() {
return this.cropRows;
}

public void store(CropRow cropRow) {
this.cropRows.add(cropRow);
}

public void store(CropRow[] cropRows) {
this.cropRows.addAll(Arrays.asList(cropRows));
}

public void store(List<CropRow> cropRows) {
this.cropRows.addAll(cropRows);
}

}
Original file line number Diff line number Diff line change
@@ -1,8 +1,77 @@
package com.zipcodewilmington.froilansfarm;

import com.zipcodewilmington.froilansfarm.animals.Chicken;
import com.zipcodewilmington.froilansfarm.animals.Horse;
import com.zipcodewilmington.froilansfarm.buildings.ChickenCoop;
import com.zipcodewilmington.froilansfarm.buildings.Stable;
import com.zipcodewilmington.froilansfarm.interfaces.Edible;
import com.zipcodewilmington.froilansfarm.plants.Crop;
import com.zipcodewilmington.froilansfarm.plants.TomatoPlant;
import com.zipcodewilmington.froilansfarm.vehicles.Aircraft;
import com.zipcodewilmington.froilansfarm.vehicles.CropDuster;
import com.zipcodewilmington.froilansfarm.vehicles.Tractor;
import com.zipcodewilmington.froilansfarm.vehicles.Vehicle;

import java.util.List;

/**
* Created by leon on 2/26/18.
*/
public class MainApplication {
public static void main(String[] args) {
// Create the Chicken objects using a loop
Chicken[] chickens = new Chicken[15];
for (int i = 0; i < chickens.length; i++) {
chickens[i] = new Chicken();
}

// Create the ChickenCoops using the Chicken arrays
ChickenCoop[] coops = new ChickenCoop[4];
coops[0] = new ChickenCoop(new Chicken[] { chickens[0], chickens[1], chickens[2], chickens[3], chickens[4] });
coops[1] = new ChickenCoop(new Chicken[] { chickens[5], chickens[6], chickens[7], chickens[8] });
coops[2] = new ChickenCoop(new Chicken[] { chickens[9], chickens[10], chickens[11] });
coops[3] = new ChickenCoop(new Chicken[] { chickens[12], chickens[13], chickens[14] });

// Created the horses objects using a loop
Horse[] horses = new Horse[10];
for (int i = 0; i < horses.length; i++) {
horses[i] = new Horse();
}

// Create the Stables using the Horse arrays
Stable[] stables = new Stable[3];
stables[0] = new Stable(List.of(new Horse[]{horses[0], horses[1], horses[2], horses[3]}));

stables[1] = new Stable(List.of(new Horse[]{horses[4], horses[5], horses[6], horses[7]}));
stables[2] = new Stable(List.of(new Horse[]{horses[8], horses[9]}));

Crop corn;
corn = new Crop() {
@Override
public Edible yield() {
return null;
}
};

Crop tomato = new TomatoPlant();

// Create the crop rows
CropRow rowOne = new CropRow(new Crop[] {corn});
CropRow rowTwo = new CropRow(new Crop[] {tomato});
CropRow rowThree = new CropRow(new Crop[] {});
CropRow rowFour = new CropRow(new Crop[] {});
CropRow rowFive = new CropRow(new Crop[] {});

// Add the crop rows to the field
Field field = new Field(new CropRow[] {rowOne, rowTwo, rowThree, rowFour, rowFive});

Farmer froilan = new Farmer("Froilan");
Tractor froilansTractor = new Tractor();
CropDuster froilansCropDuster = new CropDuster();
Vehicle[] froilainsVehicles = { froilansTractor };
Farmer froilanda = new Farmer("Froilanda");
Person[] people = {froilan,froilanda};
Aircraft cropduster = new CropDuster();
}

}
14 changes: 14 additions & 0 deletions src/main/java/com/zipcodewilmington/froilansfarm/Person.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
package com.zipcodewilmington.froilansfarm;

import com.zipcodewilmington.froilansfarm.interfaces.Eater;
import com.zipcodewilmington.froilansfarm.interfaces.NoiseMaker;

public abstract class Person implements Eater, NoiseMaker {

public String name;

public Person(String name) {
this.name = name;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
package com.zipcodewilmington.froilansfarm.animals;

import com.zipcodewilmington.froilansfarm.interfaces.Eater;
import com.zipcodewilmington.froilansfarm.interfaces.NoiseMaker;

public abstract class Animal implements Eater, NoiseMaker {

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
package com.zipcodewilmington.froilansfarm.animals;

import com.zipcodewilmington.froilansfarm.food.EdibleEgg;
import com.zipcodewilmington.froilansfarm.interfaces.Edible;
import com.zipcodewilmington.froilansfarm.interfaces.Produce;

public class Chicken extends Animal implements Produce {

public boolean hasBeenFertilized;

@Override
public Edible yield() {
if(hasBeenFertilized) {
return new EdibleEgg();
} else {
return null;
}
}

@Override
public void eat(Edible edible) {
System.out.println("peck peck");
}

@Override
public void makeNoise() {
System.out.println("buck buck buckawk");
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package com.zipcodewilmington.froilansfarm.animals;

import com.zipcodewilmington.froilansfarm.interfaces.Edible;
import com.zipcodewilmington.froilansfarm.interfaces.Rideable;

public class Horse extends Animal implements Rideable {

@Override
public void eat(Edible edible) {
System.out.println("munch munch");
}

@Override
public void makeNoise() {
System.out.println("neigh");
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
package com.zipcodewilmington.froilansfarm.buildings;

import com.zipcodewilmington.froilansfarm.animals.Chicken;

import java.util.ArrayList;

public class ChickenCoop {

Chicken[] chickenList = new ArrayList<>().toArray(new Chicken[0]);

public ChickenCoop(Chicken[] chickenList) {
this.chickenList = chickenList;
}

public Chicken[] getChickenList() {
return chickenList;
}

public void setChickenList(ArrayList<Chicken> chickenList) {
this.chickenList = chickenList.toArray(new Chicken[0]);
}

@Override
public String toString() {
return "ChickenCoop{" +
"chickenList=" + chickenList +
'}';
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
package com.zipcodewilmington.froilansfarm.buildings;

import com.zipcodewilmington.froilansfarm.Person;

import java.util.ArrayList;

public class FarmHouse {

ArrayList<Person> peopleList = new ArrayList<>();

}
Loading