Skip to content

Commit b21dfb5

Browse files
committed
Test info BuySellModel can fetch from a Security object
1 parent e6c1b36 commit b21dfb5

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

name.abuchen.portfolio.ui.tests/src/name/abuchen/portfolio/ui/dialogs/transactions/BuySellModelTest.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,15 @@
55

66
import java.math.BigDecimal;
77
import java.text.MessageFormat;
8+
import java.time.LocalDate;
89

910
import org.eclipse.core.databinding.validation.ValidationStatus;
1011
import org.junit.Test;
1112

1213
import name.abuchen.portfolio.model.Client;
1314
import name.abuchen.portfolio.model.PortfolioTransaction;
15+
import name.abuchen.portfolio.model.Security;
16+
import name.abuchen.portfolio.model.SecurityPrice;
1417
import name.abuchen.portfolio.money.Values;
1518
import name.abuchen.portfolio.ui.Messages;
1619

@@ -119,4 +122,20 @@ public void testStatusErrors()
119122
assertThat(model.getCalculationStatus(), is(ValidationStatus
120123
.error(MessageFormat.format(Messages.MsgDialogInputRequired, Messages.ColumnSubTotal))));
121124
}
125+
126+
@Test
127+
public void testWithSecurity()
128+
{
129+
// some properties can be fetched from a Security object
130+
var model = new BuySellModel(new Client(), PortfolioTransaction.Type.BUY);
131+
var security = new Security("Acme Corporation", "USD");
132+
var date = LocalDate.now();
133+
security.addPrice(new SecurityPrice(date, 5L * Values.Quote.factor()));
134+
model.setSecurity(security);
135+
model.setShares(100L * Values.Share.factor());
136+
model.setDate(date);
137+
assertThat(model.getQuote(), is(BigDecimal.valueOf(5.0)));
138+
assertThat(model.getSecurityCurrencyCode(), is("USD"));
139+
assertThat(model.getExchangeRate(), is(BigDecimal.ONE));
140+
}
122141
}

0 commit comments

Comments
 (0)