Skip to content

Commit

Permalink
Merge branch '62-portfoliotest'
Browse files Browse the repository at this point in the history
merge
  • Loading branch information
tommyah committed Mar 18, 2026
2 parents 1ad6d0a + 4716740 commit 535f77d
Show file tree
Hide file tree
Showing 2 changed files with 81 additions and 4 deletions.
83 changes: 80 additions & 3 deletions src/test/java/edu/ntnu/idi/idatt2003/g40/mappe/PortfolioTest.java
Original file line number Diff line number Diff line change
@@ -1,3 +1,80 @@
public class PortfolioTest {

}
package edu.ntnu.idi.idatt2003.g40.mappe;

import org.junit.jupiter.api.Test;

import java.math.BigDecimal;
import java.util.List;

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

class PortfolioTest {

@Test
void addShareAddsShareToPortfolio() {
Portfolio portfolio = new Portfolio();
Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150"));
Share share = new Share(stock, new BigDecimal("2"), new BigDecimal("100"));

boolean result = portfolio.addShare(share);

assertTrue(result);
assertTrue(portfolio.contains(share));
}

@Test
void removeShareRemovesShareFromPortfolio() {
Portfolio portfolio = new Portfolio();
Stock stock = new Stock("TSLA", "Tesla", new BigDecimal("200"));
Share share = new Share(stock, new BigDecimal("1"), new BigDecimal("200"));

portfolio.addShare(share);
boolean result = portfolio.removeShare(share);

assertTrue(result);
assertFalse(portfolio.contains(share));
}

@Test
void getSharesReturnsAllShares() {
Portfolio portfolio = new Portfolio();

Stock stock = new Stock("AAPL", "Apple", new BigDecimal("150"));
Share share = new Share(stock, new BigDecimal("3"), new BigDecimal("150"));

portfolio.addShare(share);

List<Share> shares = portfolio.getShares();

assertEquals(1, shares.size());
assertTrue(shares.contains(share));
}

@Test
void getSharesWithSymbolReturnsMatchingShares() {
Portfolio portfolio = new Portfolio();

Stock apple = new Stock("AAPL", "Apple", new BigDecimal("150"));
Stock tesla = new Stock("TSLA", "Tesla", new BigDecimal("200"));

Share appleShare = new Share(apple, new BigDecimal("1"), new BigDecimal("150"));
Share teslaShare = new Share(tesla, new BigDecimal("1"), new BigDecimal("200"));

portfolio.addShare(appleShare);
portfolio.addShare(teslaShare);

List<Share> result = portfolio.getShares("AAPL");

assertEquals(1, result.size());
assertTrue(result.contains(appleShare));
}

@Test
void containsReturnsFalseWhenShareNotPresent() {
Portfolio portfolio = new Portfolio();

Stock stock = new Stock("NVDA", "Nvidia", new BigDecimal("800"));
Share share = new Share(stock, new BigDecimal("1"), new BigDecimal("800"));

assertFalse(portfolio.contains(share));
}
}
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
public class PurchaseCalculatorTest {

}

0 comments on commit 535f77d

Please sign in to comment.