storj/web/satellite/tests/unit/utils/strings.spec.ts
Jeremy Wharton 6142b1cd12 web/satellite: show overridden usage prices in the satellite UI
This change allows users who register with a partner that has
different project usage prices to see the correct prices in the
satellite UI.

Resolves storj/storj-private#90

Change-Id: I06bde50db474b25396671a27e282ef5637efe85b
2023-01-17 15:01:57 +00:00

35 lines
1.3 KiB
TypeScript

// Copyright (C) 2023 Storj Labs, Inc.
// See LICENSE for copying information.
import { decimalShift } from '@/utils/strings';
describe('decimalShift', (): void => {
it('shifts integers correctly', function() {
['', '-'].forEach(sign => {
const decimal = sign+'123';
expect(decimalShift(decimal, 0)).toBe(sign+'123');
expect(decimalShift(decimal, 2)).toBe(sign+'1.23');
expect(decimalShift(decimal, 5)).toBe(sign+'0.00123');
expect(decimalShift(decimal, -2)).toBe(sign+'12300');
});
});
it('shifts decimals correctly', function() {
['', '-'].forEach(sign => {
const decimal = sign+'1.23';
expect(decimalShift(decimal, 0)).toBe(sign+'1.23');
expect(decimalShift(decimal, -2)).toBe(sign+'123');
expect(decimalShift(decimal, 3)).toBe(sign+'0.00123');
expect(decimalShift(decimal, -4)).toBe(sign+'12300');
});
});
it('trims unnecessary characters', function() {
['', '-'].forEach(sign => {
expect(decimalShift(sign+'0.0012300', -2)).toBe(sign+'0.123');
expect(decimalShift(sign+'12300', 2)).toBe(sign+'123');
expect(decimalShift(sign+'000.000', 1)).toBe('0');
});
});
});