@Test public void setLineHashes_sets_lineCount_to_size_of_list_and_rawLineHashes_to_join_by_line_return() { FileSourceDto underTest = new FileSourceDto(); int expected = 1 + new Random().nextInt(96); List<String> lineHashes = IntStream.range(0, expected).mapToObj(String::valueOf).collect(Collectors.toList()); underTest.setLineHashes(lineHashes); assertThat(underTest.getLineCount()).isEqualTo(expected); assertThat(underTest.getRawLineHashes()).isEqualTo(Joiner.on('\n').join(lineHashes)); } }
private static void verifyFileMoveRowDto(RecordingResultHandler resultHander, ComponentAndSource componentAndSource) { FileMoveRowDto dto = resultHander.getById(componentAndSource.component.getId()).get(); assertThat(dto.getKey()).isEqualTo(componentAndSource.component.getDbKey()); assertThat(dto.getUuid()).isEqualTo(componentAndSource.component.uuid()); assertThat(dto.getPath()).isEqualTo(componentAndSource.component.path()); assertThat(dto.getLineCount()).isEqualTo(componentAndSource.source.getLineCount()); }
@Test public void setLineHashes_empty_sets_lineCount_to_1_and_rawLineHashes_to_null() { FileSourceDto underTest = new FileSourceDto(); underTest.setLineHashes(Collections.emptyList()); assertThat(underTest.getLineCount()).isEqualTo(1); assertThat(underTest.getLineHashes()).isEmpty(); assertThat(underTest.getRawLineHashes()).isNull(); }
@Test public void new_FileSourceDto_as_lineCount_0_and_rawLineHashes_to_null() { FileSourceDto underTest = new FileSourceDto(); assertThat(underTest.getLineCount()).isZero(); assertThat(underTest.getLineHashes()).isEmpty(); assertThat(underTest.getRawLineHashes()).isNull(); }
@Test public void setLineHashes_null_sets_lineCount_to_0_and_rawLineHashes_to_null() { FileSourceDto underTest = new FileSourceDto(); underTest.setLineHashes(null); assertThat(underTest.getLineCount()).isZero(); assertThat(underTest.getLineHashes()).isEmpty(); assertThat(underTest.getRawLineHashes()).isNull(); }
@Test public void selectSourceByFileUuid_reads_source_without_line_hashes() { FileSourceDto fileSourceDto = new FileSourceDto() .setProjectUuid("Foo") .setFileUuid("Bar") .setCreatedAt(1500000000000L) .setUpdatedAt(1500000000001L); underTest.insert(dbSession, fileSourceDto); dbSession.commit(); FileSourceDto res = underTest.selectByFileUuid(dbSession, fileSourceDto.getFileUuid()); assertThat(res.getLineCount()).isEqualTo(0); assertThat(res.getLineHashes()).isEmpty(); }
@Test public void update_to_no_line_hashes() { ImmutableList<String> lineHashes = of("a", "b", "c"); FileSourceDto fileSourceDto = new FileSourceDto() .setProjectUuid("Foo") .setFileUuid("Bar") .setLineHashes(lineHashes) .setCreatedAt(1500000000000L) .setUpdatedAt(1500000000001L); underTest.insert(dbSession, fileSourceDto); dbSession.commit(); FileSourceDto resBefore = underTest.selectByFileUuid(dbSession, fileSourceDto.getFileUuid()); assertThat(resBefore.getLineCount()).isEqualTo(lineHashes.size()); assertThat(resBefore.getLineHashes()).isEqualTo(lineHashes); fileSourceDto.setId(resBefore.getId()); fileSourceDto.setLineHashes(emptyList()); underTest.update(dbSession, fileSourceDto); dbSession.commit(); FileSourceDto res = underTest.selectByFileUuid(dbSession, fileSourceDto.getFileUuid()); assertThat(res.getLineHashes()).isEmpty(); assertThat(res.getLineCount()).isEqualTo(1); }
@Test public void insert() { FileSourceDto expected = new FileSourceDto() .setProjectUuid("PRJ_UUID") .setFileUuid("FILE2_UUID") .setBinaryData("FILE2_BINARY_DATA".getBytes()) .setDataHash("FILE2_DATA_HASH") .setLineHashes(of("LINE1_HASH", "LINE2_HASH")) .setSrcHash("FILE2_HASH") .setCreatedAt(1500000000000L) .setUpdatedAt(1500000000001L) .setLineHashesVersion(1) .setRevision("123456789"); underTest.insert(dbSession, expected); dbSession.commit(); FileSourceDto fileSourceDto = underTest.selectByFileUuid(dbSession, expected.getFileUuid()); assertThat(fileSourceDto.getProjectUuid()).isEqualTo(expected.getProjectUuid()); assertThat(fileSourceDto.getFileUuid()).isEqualTo(expected.getFileUuid()); assertThat(fileSourceDto.getBinaryData()).isEqualTo(expected.getBinaryData()); assertThat(fileSourceDto.getDataHash()).isEqualTo(expected.getDataHash()); assertThat(fileSourceDto.getRawLineHashes()).isEqualTo(expected.getRawLineHashes()); assertThat(fileSourceDto.getLineHashes()).isEqualTo(expected.getLineHashes()); assertThat(fileSourceDto.getLineCount()).isEqualTo(expected.getLineCount()); assertThat(fileSourceDto.getSrcHash()).isEqualTo(expected.getSrcHash()); assertThat(fileSourceDto.getCreatedAt()).isEqualTo(expected.getCreatedAt()); assertThat(fileSourceDto.getUpdatedAt()).isEqualTo(expected.getUpdatedAt()); assertThat(fileSourceDto.getRevision()).isEqualTo(expected.getRevision()); }