Skip to content
Snippets Groups Projects
Commit c0b50afc authored by Martin Vogel's avatar Martin Vogel
Browse files

refactor(#664): add tests

parent cad31fb7
No related branches found
No related tags found
1 merge request!211#664 Test JWK Generator
...@@ -99,7 +99,7 @@ public final class KeyWriter { ...@@ -99,7 +99,7 @@ public final class KeyWriter {
Files.write(path, content.getBytes(StandardCharsets.UTF_8)); Files.write(path, content.getBytes(StandardCharsets.UTF_8));
} catch (final IOException e) { } catch (final IOException e) {
LOGGER.error(e.getMessage(), e); LOGGER.error(e.getMessage(), e);
System.exit(0); throw new RuntimeException(e);
} }
} }
} }
...@@ -8,6 +8,7 @@ import dev.fitko.fitconnect.api.domain.model.submission.SubmissionForPickup; ...@@ -8,6 +8,7 @@ import dev.fitko.fitconnect.api.domain.model.submission.SubmissionForPickup;
import dev.fitko.fitconnect.api.services.Subscriber; import dev.fitko.fitconnect.api.services.Subscriber;
import dev.fitko.fitconnect.cli.batch.CsvImporter; import dev.fitko.fitconnect.cli.batch.CsvImporter;
import dev.fitko.fitconnect.cli.batch.ImportRecord; import dev.fitko.fitconnect.cli.batch.ImportRecord;
import dev.fitko.fitconnect.cli.keygen.KeyWriter;
import dev.fitko.fitconnect.client.SenderClient; import dev.fitko.fitconnect.client.SenderClient;
import dev.fitko.fitconnect.client.SubscriberClient; import dev.fitko.fitconnect.client.SubscriberClient;
import dev.fitko.fitconnect.client.sender.model.Attachment; import dev.fitko.fitconnect.client.sender.model.Attachment;
...@@ -19,6 +20,7 @@ import org.junit.jupiter.api.BeforeEach; ...@@ -19,6 +20,7 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.io.TempDir; import org.junit.jupiter.api.io.TempDir;
import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
...@@ -26,6 +28,7 @@ import java.util.Map; ...@@ -26,6 +28,7 @@ import java.util.Map;
import java.util.Set; import java.util.Set;
import java.util.UUID; import java.util.UUID;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.ArgumentMatchers.any; import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.mock; import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
...@@ -139,6 +142,31 @@ class CommandLineClientTest { ...@@ -139,6 +142,31 @@ class CommandLineClientTest {
logs.assertContains("DONE ! Finished batch import of " + importRecords.size() + " submissions"); logs.assertContains("DONE ! Finished batch import of " + importRecords.size() + " submissions");
} }
@Test
void testKeyGeneration(@TempDir final Path tempDir) {
// When
underTest.run("keygen", "--outDir=" + tempDir.toAbsolutePath());
// Then
logs.assertContains("Writing keys to directory " + tempDir.toAbsolutePath());
assertTrue(Files.exists(Path.of(tempDir.toString(), KeyWriter.PUBLIC_ENCRYPTION_KEY_NAME)));
assertTrue(Files.exists(Path.of(tempDir.toString(), KeyWriter.PRIVATE_DECRYPTION_KEY_NAME)));
assertTrue(Files.exists(Path.of(tempDir.toString(), KeyWriter.PUBLIC_SIGNATURE_VERIFICATION_KEY_NAME)));
assertTrue(Files.exists(Path.of(tempDir.toString(), KeyWriter.PRIVATE_SIGNING_KEY_NAME)));
}
@Test
void testKeyGenerationWithConfigOption(@TempDir final Path tempDir) {
// When
underTest.run("keygen", "--outDir=" + tempDir.toAbsolutePath(), "--withConfig=true");
// Then
assertTrue(Files.exists(Path.of(tempDir.toString(), "config.yml")));
}
private Set<SubmissionForPickup> generateSubmissions(final UUID destinationId, final int count) { private Set<SubmissionForPickup> generateSubmissions(final UUID destinationId, final int count) {
final Set<SubmissionForPickup> submissions = new HashSet<>(count); final Set<SubmissionForPickup> submissions = new HashSet<>(count);
for (int i = 0; i < count; i++) { for (int i = 0; i < count; i++) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment