mirror of https://github.com/ghostfolio/ghostfolio
committed by
GitHub
3 changed files with 115 additions and 46 deletions
@ -0,0 +1,64 @@ |
|||||
|
import { CryptocurrencyService } from '@ghostfolio/api/services/cryptocurrency/cryptocurrency.service'; |
||||
|
import { YahooFinanceService } from './yahoo-finance.service'; |
||||
|
|
||||
|
jest.mock( |
||||
|
'@ghostfolio/api/services/cryptocurrency/cryptocurrency.service', |
||||
|
() => { |
||||
|
return { |
||||
|
CryptocurrencyService: jest.fn().mockImplementation(() => { |
||||
|
return { |
||||
|
isCryptocurrency: (symbol: string) => { |
||||
|
switch (symbol) { |
||||
|
case 'BTCUSD': |
||||
|
return true; |
||||
|
case 'DOGEUSD': |
||||
|
return true; |
||||
|
case 'SOLUSD': |
||||
|
return true; |
||||
|
default: |
||||
|
return false; |
||||
|
} |
||||
|
} |
||||
|
}; |
||||
|
}) |
||||
|
}; |
||||
|
} |
||||
|
); |
||||
|
|
||||
|
describe('YahooFinanceService', () => { |
||||
|
let cryptocurrencyService: CryptocurrencyService; |
||||
|
let yahooFinanceService: YahooFinanceService; |
||||
|
|
||||
|
beforeAll(async () => { |
||||
|
cryptocurrencyService = new CryptocurrencyService(); |
||||
|
|
||||
|
yahooFinanceService = new YahooFinanceService(cryptocurrencyService); |
||||
|
}); |
||||
|
|
||||
|
it('convertFromYahooFinanceSymbol', async () => { |
||||
|
expect( |
||||
|
await yahooFinanceService.convertFromYahooFinanceSymbol('BRK-B') |
||||
|
).toEqual('BRK-B'); |
||||
|
expect( |
||||
|
await yahooFinanceService.convertFromYahooFinanceSymbol('BTC-USD') |
||||
|
).toEqual('BTCUSD'); |
||||
|
expect( |
||||
|
await yahooFinanceService.convertFromYahooFinanceSymbol('EURUSD=X') |
||||
|
).toEqual('EURUSD'); |
||||
|
}); |
||||
|
|
||||
|
it('convertToYahooFinanceSymbol', async () => { |
||||
|
expect( |
||||
|
await yahooFinanceService.convertToYahooFinanceSymbol('BTCUSD') |
||||
|
).toEqual('BTC-USD'); |
||||
|
expect( |
||||
|
await yahooFinanceService.convertToYahooFinanceSymbol('DOGEUSD') |
||||
|
).toEqual('DOGE-USD'); |
||||
|
expect( |
||||
|
await yahooFinanceService.convertToYahooFinanceSymbol('SOL1USD') |
||||
|
).toEqual('SOL1-USD'); |
||||
|
expect( |
||||
|
await yahooFinanceService.convertToYahooFinanceSymbol('USDCHF') |
||||
|
).toEqual('USDCHF=X'); |
||||
|
}); |
||||
|
}); |
Loading…
Reference in new issue