From 678524704c5a710d42f75d5d0c96fd74b31acea6 Mon Sep 17 00:00:00 2001 From: SrdjanPaunovic Date: Wed, 3 May 2017 13:21:13 +0200 Subject: [PATCH] Test done --- extension-objects/pom.xml | 8 ++++- extension-objects/src/main/java/App.java | 3 +- .../CommanderExtension.java | 2 ++ .../java/concreteextensions/Commander.java | 5 +++ .../java/concreteextensions/Sergeant.java | 2 +- .../main/java/concreteextensions/Soldier.java | 2 +- extension-objects/src/test/java/AppTest.java | 16 +++++++++ .../concreteextensions/CommanderTest.java | 19 +++++++++++ .../java/concreteextensions/SergeantTest.java | 19 +++++++++++ .../java/concreteextensions/SoldierTest.java | 19 +++++++++++ .../test/java/units/CommanderUnitTest.java | 22 +++++++++++++ .../src/test/java/units/SergeantUnitTest.java | 22 +++++++++++++ .../src/test/java/units/SoldierUnitTest.java | 24 ++++++++++++++ .../src/test/java/units/UnitTest.java | 33 +++++++++++++++++++ 14 files changed, 192 insertions(+), 4 deletions(-) create mode 100644 extension-objects/src/test/java/AppTest.java create mode 100644 extension-objects/src/test/java/concreteextensions/CommanderTest.java create mode 100644 extension-objects/src/test/java/concreteextensions/SergeantTest.java create mode 100644 extension-objects/src/test/java/concreteextensions/SoldierTest.java create mode 100644 extension-objects/src/test/java/units/CommanderUnitTest.java create mode 100644 extension-objects/src/test/java/units/SergeantUnitTest.java create mode 100644 extension-objects/src/test/java/units/SoldierUnitTest.java create mode 100644 extension-objects/src/test/java/units/UnitTest.java diff --git a/extension-objects/pom.xml b/extension-objects/pom.xml index afdf010a2..77f6ccfa2 100644 --- a/extension-objects/pom.xml +++ b/extension-objects/pom.xml @@ -10,6 +10,12 @@ 4.0.0 extension-objects + + + junit + junit + + - \ No newline at end of file + diff --git a/extension-objects/src/main/java/App.java b/extension-objects/src/main/java/App.java index 9aa934580..af76682b8 100644 --- a/extension-objects/src/main/java/App.java +++ b/extension-objects/src/main/java/App.java @@ -38,6 +38,7 @@ public class App { SergeantExtension sergeantExtension = (SergeantExtension) unit.getUnitExtension("SergeantExtension"); CommanderExtension commanderExtension = (CommanderExtension) unit.getUnitExtension("CommanderExtension"); + //if unit have extension call the method if (soldierExtension != null) { soldierExtension.soldierReady(); } else { @@ -51,7 +52,7 @@ public class App { } if (commanderExtension != null) { - // commanderExtension.sergeantReady(); + commanderExtension.commanderReady(); } else { System.out.println(unit.getName() + " without CommanderExtension"); } diff --git a/extension-objects/src/main/java/abstractextensions/CommanderExtension.java b/extension-objects/src/main/java/abstractextensions/CommanderExtension.java index aa716a3ae..3088c9f86 100644 --- a/extension-objects/src/main/java/abstractextensions/CommanderExtension.java +++ b/extension-objects/src/main/java/abstractextensions/CommanderExtension.java @@ -4,4 +4,6 @@ package abstractextensions; * Created by Srdjan on 27-Apr-17. */ public interface CommanderExtension extends UnitExtension { + + void commanderReady(); } diff --git a/extension-objects/src/main/java/concreteextensions/Commander.java b/extension-objects/src/main/java/concreteextensions/Commander.java index 3de4d124a..3ce183afb 100644 --- a/extension-objects/src/main/java/concreteextensions/Commander.java +++ b/extension-objects/src/main/java/concreteextensions/Commander.java @@ -13,4 +13,9 @@ public class Commander implements CommanderExtension { public Commander(CommanderUnit commanderUnit) { this.unit = commanderUnit; } + + @Override + public void commanderReady() { + System.out.println("[Commander] " + unit.getName() + " is ready!"); + } } diff --git a/extension-objects/src/main/java/concreteextensions/Sergeant.java b/extension-objects/src/main/java/concreteextensions/Sergeant.java index b2d4485c3..499ea4f63 100644 --- a/extension-objects/src/main/java/concreteextensions/Sergeant.java +++ b/extension-objects/src/main/java/concreteextensions/Sergeant.java @@ -16,6 +16,6 @@ public class Sergeant implements SergeantExtension { @Override public void sergeantReady() { - System.out.println("[Sergeant] " + unit.getName() + " do command! "); + System.out.println("[Sergeant] " + unit.getName() + " is ready! "); } } diff --git a/extension-objects/src/main/java/concreteextensions/Soldier.java b/extension-objects/src/main/java/concreteextensions/Soldier.java index e2d11e244..844abd57a 100644 --- a/extension-objects/src/main/java/concreteextensions/Soldier.java +++ b/extension-objects/src/main/java/concreteextensions/Soldier.java @@ -16,6 +16,6 @@ public class Soldier implements SoldierExtension { @Override public void soldierReady() { - System.out.println("[Solider] " + unit.getName() + " do command"); + System.out.println("[Solider] " + unit.getName() + " is ready!"); } } diff --git a/extension-objects/src/test/java/AppTest.java b/extension-objects/src/test/java/AppTest.java new file mode 100644 index 000000000..88ba70da9 --- /dev/null +++ b/extension-objects/src/test/java/AppTest.java @@ -0,0 +1,16 @@ +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class AppTest { + @Test + public void main() throws Exception { + + String[] args = {}; + App.main(args); + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/concreteextensions/CommanderTest.java b/extension-objects/src/test/java/concreteextensions/CommanderTest.java new file mode 100644 index 000000000..a5ac7b506 --- /dev/null +++ b/extension-objects/src/test/java/concreteextensions/CommanderTest.java @@ -0,0 +1,19 @@ +package concreteextensions; + +import org.junit.Test; +import units.CommanderUnit; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class CommanderTest { + @Test + public void commanderReady() throws Exception { + final Commander commander = new Commander(new CommanderUnit("CommanderUnitTest")); + + commander.commanderReady(); + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/concreteextensions/SergeantTest.java b/extension-objects/src/test/java/concreteextensions/SergeantTest.java new file mode 100644 index 000000000..163d5c1fc --- /dev/null +++ b/extension-objects/src/test/java/concreteextensions/SergeantTest.java @@ -0,0 +1,19 @@ +package concreteextensions; + +import org.junit.Test; +import units.SergeantUnit; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class SergeantTest { + @Test + public void sergeantReady() throws Exception { + final Sergeant sergeant = new Sergeant(new SergeantUnit("SergeantUnitTest")); + + sergeant.sergeantReady(); + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/concreteextensions/SoldierTest.java b/extension-objects/src/test/java/concreteextensions/SoldierTest.java new file mode 100644 index 000000000..dde222d61 --- /dev/null +++ b/extension-objects/src/test/java/concreteextensions/SoldierTest.java @@ -0,0 +1,19 @@ +package concreteextensions; + +import org.junit.Test; +import units.SoldierUnit; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class SoldierTest { + @Test + public void soldierReady() throws Exception { + final Soldier soldier = new Soldier(new SoldierUnit("SoldierUnitTest")); + + soldier.soldierReady(); + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/units/CommanderUnitTest.java b/extension-objects/src/test/java/units/CommanderUnitTest.java new file mode 100644 index 000000000..1ec498d91 --- /dev/null +++ b/extension-objects/src/test/java/units/CommanderUnitTest.java @@ -0,0 +1,22 @@ +package units; + +import abstractextensions.CommanderExtension; +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class CommanderUnitTest { + @Test + public void getUnitExtension() throws Exception { + + final Unit unit = new CommanderUnit("CommanderUnitName"); + + assertNull(unit.getUnitExtension("SoldierExtension")); + assertNull(unit.getUnitExtension("SergeantExtension")); + assertNotNull((CommanderExtension)unit.getUnitExtension("CommanderExtension")); + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/units/SergeantUnitTest.java b/extension-objects/src/test/java/units/SergeantUnitTest.java new file mode 100644 index 000000000..8fe62298c --- /dev/null +++ b/extension-objects/src/test/java/units/SergeantUnitTest.java @@ -0,0 +1,22 @@ +package units; + +import abstractextensions.SergeantExtension; +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class SergeantUnitTest { + @Test + public void getUnitExtension() throws Exception { + + final Unit unit = new SergeantUnit("SergeantUnitName"); + + assertNull(unit.getUnitExtension("SoldierExtension")); + assertNotNull((SergeantExtension)unit.getUnitExtension("SergeantExtension")); + assertNull(unit.getUnitExtension("CommanderExtension")); + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/units/SoldierUnitTest.java b/extension-objects/src/test/java/units/SoldierUnitTest.java new file mode 100644 index 000000000..8d1fe5667 --- /dev/null +++ b/extension-objects/src/test/java/units/SoldierUnitTest.java @@ -0,0 +1,24 @@ +package units; + +import abstractextensions.SoldierExtension; +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class SoldierUnitTest { + @Test + public void getUnitExtension() throws Exception { + + final Unit unit = new SoldierUnit("SoldierUnitName"); + + assertNotNull((SoldierExtension)unit.getUnitExtension("SoldierExtension")); + assertNull(unit.getUnitExtension("SergeantExtension")); + assertNull(unit.getUnitExtension("CommanderExtension")); + + + } + +} \ No newline at end of file diff --git a/extension-objects/src/test/java/units/UnitTest.java b/extension-objects/src/test/java/units/UnitTest.java new file mode 100644 index 000000000..08fd10d8e --- /dev/null +++ b/extension-objects/src/test/java/units/UnitTest.java @@ -0,0 +1,33 @@ +package units; + +import org.junit.After; +import org.junit.Before; +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Created by Srdjan on 03-May-17. + */ +public class UnitTest { + + private Unit unit; + + @Test + public void testConstGetSet() throws Exception { + final String name = "testName"; + final Unit unit = new Unit(name); + assertEquals(name,unit.getName()); + + final String newName = "newName"; + unit.setName(newName); + assertEquals(newName,unit.getName()); + + + assertNull(unit.getUnitExtension("")); + assertNull(unit.getUnitExtension("SoldierExtension")); + assertNull(unit.getUnitExtension("SergeantExtension")); + assertNull(unit.getUnitExtension("CommanderExtension")); + } + +} \ No newline at end of file