diff --git a/apps/api/src/app/core/portfolio-calculator.spec.ts b/apps/api/src/app/core/portfolio-calculator.spec.ts index e1bbe7bc5..61c666611 100644 --- a/apps/api/src/app/core/portfolio-calculator.spec.ts +++ b/apps/api/src/app/core/portfolio-calculator.spec.ts @@ -46,8 +46,6 @@ function mockGetValue(symbol: string, date: Date) { if (symbol === 'VTI') { if (dateEqual(today, date)) { return { marketPrice: 213.32 }; - } else if (dateEqual(parse('2021-07-26', 'yyyy-MM-dd', new Date()), date)) { - return { marketPrice: 227.92 }; } else { const startDate = parse('2019-02-01', 'yyyy-MM-dd', new Date()); const daysInBetween = differenceInCalendarDays(date, startDate); @@ -59,6 +57,11 @@ function mockGetValue(symbol: string, date: Date) { } } else if (symbol === 'AMZN') { return { marketPrice: 2021.99 }; + } else if (symbol === 'TSLA') { + if (dateEqual(parse('2021-07-26', 'yyyy-MM-dd', new Date()), date)) { + return { marketPrice: 657.62 }; + } + return { marketPrice: 0 }; } else { return { marketPrice: 0 }; } @@ -612,12 +615,12 @@ describe('PortfolioCalculator', () => { }); describe('get current positions', () => { - it('with single VTI', async () => { + it('with single TSLA', async () => { const portfolioCalculator = new PortfolioCalculator( currentRateService, Currency.USD ); - portfolioCalculator.setTransactionPoints(orderVTITransactionPoint); + portfolioCalculator.setTransactionPoints(orderTslaTransactionPoint); const spy = jest .spyOn(Date, 'now') @@ -631,16 +634,16 @@ describe('PortfolioCalculator', () => { hasErrors: false, positions: [ { - averagePrice: new Big('195.39'), + averagePrice: new Big('719.46'), currency: 'USD', firstBuyDate: '2021-01-01', - grossPerformance: new Big('32.53'), // 227.92-195.39=32.53 - grossPerformancePercentage: new Big('0.166487537745023'), // (227.92-195.39)/195.39=0.166487537745023 - investment: new Big('195.39'), - marketPrice: 227.92, - name: 'Vanguard Total Stock Market Index Fund ETF Shares', + grossPerformance: new Big('-61.84'), // 657.62-719.46=-61.84 + grossPerformancePercentage: new Big('-0.0859533539043171'), // (657.62-719.46)/719.46=-0.085953353904317 + investment: new Big('719.46'), + marketPrice: 657.62, + name: 'Tesla, Inc.', quantity: new Big('1'), - symbol: 'VTI', + symbol: 'TSLA', transactionCount: 1 } ] @@ -1469,15 +1472,15 @@ const ordersVTI: PortfolioOrder[] = [ } ]; -const orderVTITransactionPoint: TransactionPoint[] = [ +const orderTslaTransactionPoint: TransactionPoint[] = [ { date: '2021-01-01', items: [ { - name: 'Vanguard Total Stock Market Index Fund ETF Shares', + name: 'Tesla, Inc.', quantity: new Big('1'), - symbol: 'VTI', - investment: new Big('195.39'), + symbol: 'TSLA', + investment: new Big('719.46'), currency: Currency.USD, firstBuyDate: '2021-01-01', transactionCount: 1