polish-number-to-words
Version:
Spell numbers using words in Polish | Napisz liczbę słownie po polsku
52 lines (51 loc) • 3.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const integerToWords_1 = require("../integerToWords");
describe('integerToWordsPL', () => {
it('should return "zero" for 0', () => {
expect((0, integerToWords_1.integerToWordsPL)(0)).toBe('zero');
});
it('should handle positive single-digit numbers', () => {
expect((0, integerToWords_1.integerToWordsPL)(5)).toBe('pięć');
expect((0, integerToWords_1.integerToWordsPL)(9)).toBe('dziewięć');
});
it('should handle numbers 10-19', () => {
expect((0, integerToWords_1.integerToWordsPL)(11)).toBe('jedenaście');
expect((0, integerToWords_1.integerToWordsPL)(19)).toBe('dziewiętnaście');
});
it('should handle tens', () => {
expect((0, integerToWords_1.integerToWordsPL)(20)).toBe('dwadzieścia');
expect((0, integerToWords_1.integerToWordsPL)(47)).toBe('czterdzieści siedem');
expect((0, integerToWords_1.integerToWordsPL)(99)).toBe('dziewięćdziesiąt dziewięć');
});
it('should handle hundreds', () => {
expect((0, integerToWords_1.integerToWordsPL)(100)).toBe('sto');
expect((0, integerToWords_1.integerToWordsPL)(305)).toBe('trzysta pięć');
expect((0, integerToWords_1.integerToWordsPL)(999)).toBe('dziewięćset dziewięćdziesiąt dziewięć');
});
it('should handle thousands', () => {
expect((0, integerToWords_1.integerToWordsPL)(1000)).toBe('tysiąc');
expect((0, integerToWords_1.integerToWordsPL)(2345)).toBe('dwa tysiące trzysta czterdzieści pięć');
expect((0, integerToWords_1.integerToWordsPL)(11000)).toBe('jedenaście tysięcy');
});
it('should handle millions', () => {
expect((0, integerToWords_1.integerToWordsPL)(1000000)).toBe('milion');
expect((0, integerToWords_1.integerToWordsPL)(2000001)).toBe('dwa miliony jeden');
expect((0, integerToWords_1.integerToWordsPL)(5432100)).toBe('pięć milionów czterysta trzydzieści dwa tysiące sto');
});
it('should handle billions and larger numbers', () => {
expect((0, integerToWords_1.integerToWordsPL)(1000000000)).toBe('miliard');
expect((0, integerToWords_1.integerToWordsPL)(2000001000)).toBe('dwa miliardy tysiąc');
expect((0, integerToWords_1.integerToWordsPL)(5432100000)).toBe('pięć miliardów czterysta trzydzieści dwa miliony sto tysięcy');
});
it('should handle negative numbers', () => {
expect((0, integerToWords_1.integerToWordsPL)(-5)).toBe('minus pięć');
expect((0, integerToWords_1.integerToWordsPL)(-1234567)).toBe('minus milion dwieście trzydzieści cztery tysiące pięćset sześćdziesiąt siedem');
});
it('should handle explicit single thousand option correctly', () => {
expect((0, integerToWords_1.integerToWordsPL)(1000, { explicitSingleThousand: true })).toBe('jeden tysiąc');
expect((0, integerToWords_1.integerToWordsPL)(1000030, { explicitSingleThousand: true })).toBe('jeden milion trzydzieści');
expect((0, integerToWords_1.integerToWordsPL)(1030000, { explicitSingleThousand: true })).toBe('jeden milion trzydzieści tysięcy');
expect((0, integerToWords_1.integerToWordsPL)(1001000, { explicitSingleThousand: true })).toBe('jeden milion jeden tysiąc');
});
});