Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package heroRepository;
- import org.junit.Assert;
- import org.junit.Before;
- import org.junit.Test;
- import java.util.ArrayList;
- import java.util.Collection;
- import java.util.List;
- public class HeroRepositoryTests {
- private HeroRepository heroRepository;
- private Hero testHero;
- @Before
- public void initialize(){
- this.heroRepository = new HeroRepository();
- this.testHero = new Hero("Test",0);
- }
- @Test (expected = NullPointerException.class)
- public void createShouldThrowAnExceptionWhenNullArgumentGiven(){
- this.heroRepository.create(null);
- }
- @Test (expected = IllegalArgumentException.class)
- public void createShouldThrowAnExceptionIfHeroAlreadyExists(){
- this.heroRepository.create(testHero);
- this.heroRepository.create(testHero);
- }
- @Test
- public void createShouldCreateHeroProperly(){
- Assert.assertEquals(this.heroRepository.create(testHero),
- String.format("Successfully added hero %s with level %d", this.testHero.getName(), this.testHero.getLevel()));
- }
- @Test
- public void getCountShouldWorkProperly(){
- this.heroRepository.create(testHero);
- Assert.assertEquals(this.heroRepository.getCount(),1);
- }
- @Test(expected = NullPointerException.class)
- public void removeShouldThrowAnExceptionIfNullArgumentGiven(){
- this.heroRepository.remove(null);
- }
- @Test(expected = NullPointerException.class)
- public void removeShouldThrowAnExceptionIfEmptyStringGiven(){
- this.heroRepository.remove(" ");
- }
- @Test
- public void removeShouldReturnTrueIfHeroRemoved(){
- this.heroRepository.create(testHero);
- Assert.assertTrue(this.heroRepository.remove(this.testHero.getName()));
- }
- @Test
- public void removeShouldReturnFalseIfHeroIsNotRemoved(){
- this.heroRepository.create(testHero);
- Assert.assertFalse(this.heroRepository.remove(this.testHero.getName()+"false"));
- }
- @Test
- public void getHeroWithHighestLevelShouldWorkCorrectly(){
- Hero betterHero= new Hero("Test2",100);
- this.heroRepository.create(testHero);
- this.heroRepository.create(betterHero);
- Assert.assertEquals(this.heroRepository.getHeroWithHighestLevel(),betterHero);
- }
- @Test
- public void getHeroWithHighestLevelShouldWorkReturnNullIfHeroAbsent(){
- Assert.assertNull(this.heroRepository.getHeroWithHighestLevel());
- }
- @Test
- public void getHeroShouldReturnNullIfFalseArgumentGiven(){
- Assert.assertNull(this.heroRepository.getHero("Fake"));
- }
- @Test
- public void getHeroShouldWorkCorrectly(){
- this.heroRepository.create(testHero);
- Assert.assertEquals(this.testHero,this.heroRepository.getHero(this.testHero.getName()));
- }
- @Test
- public void getHeroesShouldWorkCorrectly(){
- Collection<Hero> testHeroes = new ArrayList<>();
- testHeroes.add(testHero);
- this.heroRepository.create(testHero);
- Assert.assertArrayEquals(testHeroes.toArray(),this.heroRepository.getHeroes().toArray());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement