Skip to content

Commit 5a38486

Browse files
authored
Merge pull request #147 from doubleSlashde/bug/empty_notes_should_not_have_semikolon
Bug/empty notes should not have semikolon
2 parents 974c4db + 9c59fcb commit 5a38486

File tree

3 files changed

+16
-28
lines changed

3 files changed

+16
-28
lines changed

src/main/java/de/doubleslash/keeptime/view/ProjectReport.java

Lines changed: 7 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import static de.doubleslash.keeptime.view.ReportController.NOTE_DELIMETER;
2020

2121
import java.lang.invoke.MethodHandles;
22+
import java.util.StringJoiner;
2223

2324
import org.slf4j.Logger;
2425
import org.slf4j.LoggerFactory;
@@ -28,35 +29,23 @@ public class ProjectReport {
2829
/** The slf4j-logger for this class. */
2930
private static final Logger LOG = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
3031

31-
private int numberOfNotes;
32+
private final StringJoiner sb;
3233

33-
private final int size;
34-
35-
private final StringBuilder sb;
36-
37-
public ProjectReport(final int size) {
38-
this.size = size;
39-
this.sb = new StringBuilder(2 * 1024);
34+
public ProjectReport() {
35+
this.sb = new StringJoiner(NOTE_DELIMETER);
4036
}
4137

4238
public void appendToWorkNotes(final String currentWorkNote) {
43-
this.numberOfNotes++;
39+
4440
if (!currentWorkNote.isEmpty()) {
45-
if (this.numberOfNotes > 1) {
46-
this.sb.append(NOTE_DELIMETER);
47-
}
48-
this.sb.append(currentWorkNote.trim());
41+
this.sb.add(currentWorkNote.trim());
4942
} else {
5043
LOG.debug("Skipping empty note.");
5144
}
5245
}
5346

54-
public int getNumberOfNotes() {
55-
return this.numberOfNotes;
56-
}
57-
5847
public String getNotes() {
59-
return this.sb.toString();
48+
return sb.toString();
6049
}
6150

6251
}

src/main/java/de/doubleslash/keeptime/view/ReportController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -424,7 +424,7 @@ private Button createCopyProjectButton(final List<Work> projectWork) {
424424

425425
final EventHandler<ActionEvent> eventListener = actionEvent -> {
426426
LOG.debug("Copy to Clipboard clicked.");
427-
final ProjectReport pr = new ProjectReport(projectWork.size());
427+
final ProjectReport pr = new ProjectReport();
428428
for (int j = 0; j < projectWork.size(); j++) {
429429
final Work work = projectWork.get(j);
430430
final String currentWorkNote = work.getNotes();

src/test/java/de/doubleslash/keeptime/view/ProjectReportTest.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@
2121

2222
import java.lang.invoke.MethodHandles;
2323

24-
import org.junit.jupiter.api.BeforeAll;
2524
import org.junit.jupiter.api.BeforeEach;
2625
import org.junit.jupiter.api.Test;
2726
import org.slf4j.Logger;
@@ -38,20 +37,20 @@ public class ProjectReportTest {
3837

3938
@BeforeEach
4039
void setUp() {
41-
this.uut = new ProjectReport(3);
40+
this.uut = new ProjectReport();
4241
}
4342

4443
@Test
45-
public void testAppendToWorkNotes() {
46-
this.uut.appendToWorkNotes("note 1 ");
44+
public void testAppendToWorkNotes_EmptyNoteAtStart() {
4745
this.uut.appendToWorkNotes(EMPTY_NOTE);
46+
this.uut.appendToWorkNotes("note 1 ");
4847
this.uut.appendToWorkNotes("note 2 ");
4948
final String expected = "note 1; note 2";
5049
assertEquals(expected, this.uut.getNotes());
5150
}
5251

5352
@Test
54-
public void testAppendToWorkNotesAddNumberOfNotes() {
53+
public void testAppendToWorkNotes_EmptyNoteInTheMiddle() {
5554
this.uut.appendToWorkNotes("note 1 ");
5655
this.uut.appendToWorkNotes(EMPTY_NOTE);
5756
this.uut.appendToWorkNotes("note 2 ");
@@ -60,8 +59,8 @@ public void testAppendToWorkNotesAddNumberOfNotes() {
6059
}
6160

6261
@Test
63-
public void testAppendToWorkNotesAddNumberOfNotes_2() {
64-
this.uut = new ProjectReport(3);
62+
public void testAppendToWorkNotes_NoEmptyNote() {
63+
this.uut = new ProjectReport();
6564
this.uut.appendToWorkNotes("note 1");
6665
this.uut.appendToWorkNotes("note 2");
6766
this.uut.appendToWorkNotes("note 3");
@@ -70,8 +69,8 @@ public void testAppendToWorkNotesAddNumberOfNotes_2() {
7069
}
7170

7271
@Test
73-
public void testAppendToWorkNotesAddNumberOfNotes_EmptyNotesAtTheEnd() {
74-
this.uut = new ProjectReport(4);
72+
public void testAppendToWorkNotes_EmptyNotesAtTheEnd() {
73+
this.uut = new ProjectReport();
7574
this.uut.appendToWorkNotes("note 1");
7675
this.uut.appendToWorkNotes("note 2");
7776
this.uut.appendToWorkNotes(EMPTY_NOTE);

0 commit comments

Comments
 (0)