You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

119 lines
4.2 KiB

  1. import org.junit.jupiter.api.BeforeEach;
  2. import org.junit.jupiter.api.Test;
  3. import org.junit.jupiter.api.Assertions;
  4. class CredentialRepositoryTest {
  5. private CredentialRepository credentialRepository;
  6. @BeforeEach
  7. public void setUp()
  8. {
  9. credentialRepository = new CredentialRepository();
  10. }
  11. @Test
  12. void createNewCredentialAndAddToList() {
  13. Assertions.assertEquals(1, this.credentialRepository.createNewCredential("mock", "mock"));
  14. Assertions.assertEquals(2, this.credentialRepository.createNewCredential("kek", "mate"));
  15. }
  16. @Test
  17. void searchForUserInRepository() {
  18. this.credentialRepository.createNewCredential("mock", "mock");
  19. this.credentialRepository.createNewCredential("kek", "mate");
  20. Credential c = this.credentialRepository.getCredentialsViaName("kek");
  21. Assertions.assertEquals("mate", c.getPassword());
  22. }
  23. @Test
  24. void searchForIdInRepository() {
  25. this.credentialRepository.createNewCredential("mock", "mock");
  26. this.credentialRepository.createNewCredential("kek", "mate");
  27. Credential c = this.credentialRepository.getCredentialsViaId(1);
  28. Assertions.assertEquals("mate", c.getPassword());
  29. }
  30. @Test
  31. void testSearchWithInvalidIndex() {
  32. this.credentialRepository.createNewCredential("mock", "mock");
  33. Assertions.assertEquals(null, this.credentialRepository.getCredentialsViaId(2));
  34. }
  35. @Test
  36. void testUpdatePassword(){
  37. this.credentialRepository.createNewCredential("mock", "mock");
  38. this.credentialRepository.updatePassword(0, "newPassword");
  39. Credential c = this.credentialRepository.getCredentialsViaId(0);
  40. Assertions.assertEquals("newPassword", c.getPassword());
  41. }
  42. @Test
  43. void testUpdateUsername(){
  44. this.credentialRepository.createNewCredential("mock", "mock");
  45. this.credentialRepository.updateUsername(0, "newUsername");
  46. Credential c = this.credentialRepository.getCredentialsViaId(0);
  47. Assertions.assertEquals("newUsername", c.getName());
  48. }
  49. @Test
  50. void testDeleteEntry(){
  51. this.credentialRepository.createNewCredential("mock", "mock");
  52. this.credentialRepository.delete(0);
  53. Assertions.assertEquals(null, this.credentialRepository.getCredentialsViaId(0));
  54. }
  55. @Test
  56. void testSerializeObject(){
  57. this.credentialRepository.createNewCredential("mock", "mock");
  58. this.credentialRepository.serializeObject("testName");
  59. }
  60. @Test
  61. void testLoadingOfSerializedObject(){
  62. this.credentialRepository.createNewCredential("mock1", "mock1");
  63. this.credentialRepository.createNewCredential("mock2", "mock2");
  64. this.credentialRepository.createNewCredential("mock3", "mock3");
  65. Credential temporary1 = this.credentialRepository.getCredentialsViaId(0);
  66. Credential temporary2 = this.credentialRepository.getCredentialsViaId(1);
  67. Credential temporary3 = this.credentialRepository.getCredentialsViaId(2);
  68. this.credentialRepository.serializeObject("unitTest_Deserialization");
  69. //delete entries to proove we really load something
  70. this.credentialRepository.delete(0);
  71. this.credentialRepository.delete(0);
  72. Assertions.assertEquals(null, this.credentialRepository.getCredentialsViaName("mock2") );
  73. //load and deserialize object and proove objects are back
  74. this.credentialRepository.deserializeObjects("unitTest_Deserialization");
  75. Assertions.assertEquals(temporary1.getName(), this.credentialRepository.getCredentialsViaName("mock1").getName());
  76. Assertions.assertEquals(temporary1.getPassword(), this.credentialRepository.getCredentialsViaName("mock1").getPassword());
  77. Assertions.assertEquals(temporary2.getName(), this.credentialRepository.getCredentialsViaName("mock2").getName());
  78. Assertions.assertEquals(temporary2.getPassword(), this.credentialRepository.getCredentialsViaName("mock2").getPassword());
  79. Assertions.assertEquals(temporary3.getName(), this.credentialRepository.getCredentialsViaName("mock3").getName());
  80. Assertions.assertEquals(temporary3.getPassword(), this.credentialRepository.getCredentialsViaName("mock3").getPassword());
  81. }
  82. }