diff --git a/src/test/java/net/yogstation/api/controller/BanControllerTest.java b/src/test/java/net/yogstation/api/controller/BanControllerTest.java new file mode 100644 index 0000000..924858d --- /dev/null +++ b/src/test/java/net/yogstation/api/controller/BanControllerTest.java @@ -0,0 +1,51 @@ +package net.yogstation.api.controller; + +import net.yogstation.api.bean.AuthorizedSession; +import net.yogstation.api.jpa.entity.BanEntity; +import org.assertj.core.util.Sets; +import org.junit.Assert; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.data.domain.Page; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit4.SpringRunner; + +import java.util.Set; + +@RunWith(SpringRunner.class) +@SpringBootTest +@ActiveProfiles("development") +public class BanControllerTest { + + @Autowired + private BanController banController; + + @Autowired + private AuthorizedSession authorizedSession; + + @Test + public void test_getBans() { + Page bans = banController.getBans(0, 25); + + Assert.assertNotNull(bans); + Assert.assertEquals(5, bans.getTotalElements()); + Assert.assertEquals(1, bans.getTotalPages()); + Assert.assertNull(bans.getContent().get(0).getIp()); + Assert.assertNull(bans.getContent().get(0).getComputerid()); + } + + @Test + public void test_getBans_cidAndIPPermissions() { + Set permissions = Sets.newLinkedHashSet("bans.GDPR"); + authorizedSession.setPermissions(permissions); + Page bans = banController.getBans(0, 25); + + Assert.assertNotNull(bans); + Assert.assertEquals(5, bans.getTotalElements()); + Assert.assertEquals(1, bans.getTotalPages()); + Assert.assertNotNull(bans.getContent().get(0).getIp()); + Assert.assertNotNull(bans.getContent().get(0).getComputerid()); + } +} diff --git a/src/test/java/net/yogstation/api/service/BanServiceTest.java b/src/test/java/net/yogstation/api/service/BanServiceTest.java new file mode 100644 index 0000000..503a53a --- /dev/null +++ b/src/test/java/net/yogstation/api/service/BanServiceTest.java @@ -0,0 +1,30 @@ +package net.yogstation.api.service; + + +import net.yogstation.api.jpa.entity.BanEntity; +import net.yogstation.api.jpa.repository.BanRepository; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.InjectMocks; +import org.mockito.Mock; +import org.mockito.Mockito; +import org.mockito.junit.MockitoJUnitRunner; +import org.springframework.data.domain.PageRequest; +import org.springframework.data.jpa.domain.Specification; + +@RunWith(MockitoJUnitRunner.class) +public class BanServiceTest { + + @Mock + private BanRepository banRepository; + + @InjectMocks + private BanService banService; + + @Test + public void test_getBans() { + banService.getBans(4, 25); + + Mockito.verify(banRepository).findAll(Mockito.anyObject(), Mockito.eq(PageRequest.of(4, 25))); + } +}