Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## CharacterTest.java
- import static org.junit.Assert.*;
- import org.junit.Before;
- import org.junit.Test;
- public class CharacterTest {
- Character frodo;
- @Before
- public void setup(){
- frodo = new Character();
- }
- @Test
- public void newCharacterIsCreated(){
- assertEquals("idle", frodo.getMode());
- }
- @Test
- public void idleModeGetsAttacked(){
- frodo.getsAttacked("sword");
- assertEquals("combat", frodo.getMode());
- }
- @Test
- public void combatModeGetsAttacked(){
- frodo.setCombatMode();
- frodo.getsAttacked("sword");
- assertEquals("critical", frodo.getMode());
- }
- @Test
- public void idleModeGetsFooled(){
- frodo.getsAttacked("banana");
- assertEquals("idle", frodo.getMode());
- }
- }
- ## Character.java
- public class Character {
- private String mode = "idle";
- public String getMode() {
- return mode;
- }
- public void getsAttacked(String weapon) {
- if (isDangerous(weapon)) {
- reactToAttack();
- }
- }
- public void reactToAttack() {
- mode = adaptMode();
- }
- public String adaptMode() {
- if (mode.equals("idle"))
- return "combat";
- return "critical";
- }
- public boolean isDangerous(String weapon) {
- return Item.weaponList.contains(weapon);
- }
- public void setCombatMode() {
- mode = "combat";
- }
- }
- ## Item.java
- import java.util.ArrayList;
- import java.util.List;
- public class Item {
- public static List<String> weaponList = new ArrayList<String>();
- static {
- weaponList.add("sword");
- weaponList.add("dagger");
- weaponList.add("black magic");
- }
- }
Add Comment
Please, Sign In to add comment