package org.mafagafogigante.dungeon.achievements; import org.junit.Test; public class AchievementStoreTest { @Test(expected = IllegalStateException.class) public void testAddAchievementShouldFailIfLocked() throws Exception { // Not the right way to instantiate an AchievementStore outside the factory, used only for testing. AchievementBuilder achievementBuilder = new AchievementBuilder(); achievementBuilder.setId("A"); AchievementStore achievementStore = new AchievementStore(); achievementStore.addAchievement(achievementBuilder.createAchievement()); achievementStore.lock(); achievementBuilder.setId("B"); achievementStore.addAchievement(achievementBuilder.createAchievement()); } @Test(expected = IllegalArgumentException.class) public void testAddAchievementShouldFailForRepeatedId() throws Exception { // Not the right way to instantiate an AchievementStore outside the factory, used only for testing. AchievementBuilder achievementBuilder = new AchievementBuilder(); achievementBuilder.setId("A"); AchievementStore achievementStore = new AchievementStore(); achievementStore.addAchievement(achievementBuilder.createAchievement()); achievementStore.addAchievement(achievementBuilder.createAchievement()); } }