35 lines
953 B
TypeScript
35 lines
953 B
TypeScript
// License: LGPL-3.0-or-later
|
|
import { Money } from './money';
|
|
|
|
describe("Money", () => {
|
|
describe('Money.fromCents', () => {
|
|
it('succeeds from a old Money object', () => {
|
|
expect.assertions(2);
|
|
const old = Money.fromCents(333, 'eur');
|
|
|
|
const result = Money.fromCents(old);
|
|
expect(result).toStrictEqual(old);
|
|
|
|
expect(result).not.toBe(old);
|
|
});
|
|
it('succeeds from a json', () => {
|
|
expect.hasAssertions();
|
|
const old = { amount: 333, currency: 'eur' };
|
|
|
|
const result = Money.fromCents(old);
|
|
// eslint-disable-next-line jest/prefer-strict-equal
|
|
expect(result).toEqual(old);
|
|
|
|
expect(result).toBeInstanceOf(Money);
|
|
});
|
|
|
|
it('succeeds from function parameters', () => {
|
|
expect.hasAssertions();
|
|
const result = Money.fromCents(333, 'eur');
|
|
// eslint-disable-next-line jest/prefer-strict-equal
|
|
expect(result).toEqual({ amount: 333, currency: 'eur' });
|
|
|
|
expect(result).toBeInstanceOf(Money);
|
|
});
|
|
});
|
|
});
|