Skip to content

Commit

Permalink
test: adding TransactionArchiveTest
Browse files Browse the repository at this point in the history
  • Loading branch information
martin committed Mar 6, 2026
1 parent d090837 commit 992f8fc
Showing 1 changed file with 42 additions and 1 deletion.
43 changes: 42 additions & 1 deletion src/test/java/millions/TransactionArchiveTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,45 @@

import static org.junit.jupiter.api.Assertions.*;

class TransactionArchiveTest {}
import java.math.BigDecimal;
import java.util.List;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

class TransactionArchiveTest {

TransactionArchive archive;
Purchase purchase;
Sale sale;

@BeforeEach
public void setUp() {
archive = new TransactionArchive();
Stock stock = new Stock("SUS", "Samsung", BigDecimal.valueOf(10));
Share share = new Share(stock, 2, BigDecimal.valueOf(10));
purchase = new Purchase(share, 1);
sale = new Sale(share, 2);
}

@Test
public void testHappyPath() {
assertTrue(archive.isEmpty());
archive.add(purchase);
assertFalse(archive.isEmpty());
}

@Test
public void testNullsAndInvalid() {
archive.add(purchase);
assertFalse(archive.add(purchase));
}

@Test
public void testGetters() {
archive.add(purchase);
archive.add(sale);
assertEquals(List.of(purchase), archive.getPurchases(1));
assertEquals(List.of(sale), archive.getSales(2));
assertEquals(2, archive.countDistinctWeeks());
}
}

0 comments on commit 992f8fc

Please sign in to comment.