Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 0 additions & 12 deletions community/solutions/TEMPLATE-[replace_with_your_name].md

This file was deleted.

14 changes: 14 additions & 0 deletions community/solutions/emilybache.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Advent of Craft 2025

## Solution DAY 01

- Contributor Discord Name : emilybache
- Stack : Java, IntelliJ, Codescene
- Fork : https://github.com/emilybache/advent-of-craft-2025

## More feedback to share (optional)

- I loved the experience because:
It gave me an excuse to try out Codescene

- I found the exercise could be better if:
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,9 @@ public record Food(LocalDate expirationDate,
Boolean approvedForConsumption,
UUID inspectorId) {
public boolean isEdible(Supplier<LocalDate> now) {
if (this.expirationDate.isAfter(now.get()) &&
boolean isPastExpirationDate = this.expirationDate.isAfter(now.get());
return isPastExpirationDate &&
this.approvedForConsumption &&
this.inspectorId != null) {
return true;
} else {
return false;
}
this.inspectorId != null;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@

public class SantaCommunicator {
private final int numberOfDaysToRest;
private final Logger logger;

public SantaCommunicator(int numberOfDaysToRest) {
public SantaCommunicator(int numberOfDaysToRest, Logger logger) {
this.numberOfDaysToRest = numberOfDaysToRest;
this.logger = logger;
}

public String composeMessage(String reindeerName, String currentLocation, int numbersOfDaysForComingBack, int numberOfDaysBeforeChristmas) {
Expand All @@ -14,9 +16,9 @@ public String composeMessage(String reindeerName, String currentLocation, int nu
" in " + daysBeforeReturn + " day(s) to be ready and rest before Christmas.";
}

public boolean isOverdue(String reindeerName, String currentLocation, int numbersOfDaysForComingBack, int numberOfDaysBeforeChristmas, Logger logger) {
public boolean isOverdue(String reindeerName, String currentLocation, int numbersOfDaysForComingBack, int numberOfDaysBeforeChristmas) {
if (daysBeforeReturn(numbersOfDaysForComingBack, numberOfDaysBeforeChristmas) <= 0) {
logger.log("Overdue for " + reindeerName + " located " + currentLocation + ".");
this.logger.log("Overdue for " + reindeerName + " located " + currentLocation + ".");
return true;
}
return false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class SantaCommunicatorTest {

@BeforeEach
void setup() {
this.communicator = new SantaCommunicator(numberOfDaysToRest);
this.communicator = new SantaCommunicator(numberOfDaysToRest, logger);
}

@Test
Expand All @@ -30,8 +30,8 @@ void shouldDetectOverdueReindeer() {
DASHER,
NORTH_POLE,
numberOfDayBeforeChristmas,
numberOfDayBeforeChristmas,
logger);
numberOfDayBeforeChristmas
);

assertThat(overdue).isTrue();
assertThat(logger.getLog())
Expand All @@ -45,8 +45,8 @@ void shouldReturnFalseWhenNoOverdue() {
DASHER,
NORTH_POLE,
numberOfDayBeforeChristmas - numberOfDaysToRest - 1,
numberOfDayBeforeChristmas,
logger)
numberOfDayBeforeChristmas
)
).isFalse();
}
}