Get the name of a number, even if it's stupidly big.
25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.
Bu depo arşivlendi. Dosyaları görüntüleyebilir ve klonlayabilirsiniz ama işlem gönderemez ve konu/değişiklik isteği açamazsınız.

121 satır
4.0 KiB

  1. import getKiloName from './getShortKiloName'
  2. it('should exist', () => {
  3. expect(getKiloName).toBeDefined()
  4. })
  5. it('should be a callable', () => {
  6. expect(typeof getKiloName).toBe('function')
  7. })
  8. it('should accept 1 argument', () => {
  9. expect(getKiloName).toHaveLength(1)
  10. })
  11. test.each`
  12. thousandPower | name
  13. ${0} | ${''}
  14. ${1} | ${'thousand'}
  15. ${2} | ${'million'}
  16. ${3} | ${'billion'}
  17. ${4} | ${'trillion'}
  18. ${5} | ${'quadrillion'}
  19. ${6} | ${'quintillion'}
  20. ${7} | ${'sextillion'}
  21. ${8} | ${'septillion'}
  22. ${9} | ${'octillion'}
  23. ${10} | ${'nonillion'}
  24. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  25. expect(getKiloName(thousandPower)).toBe(name)
  26. })
  27. test.each`
  28. thousandPower | name
  29. ${11} | ${'decillion'}
  30. ${21} | ${'vigintillion'}
  31. ${31} | ${'trigintillion'}
  32. ${41} | ${'quadragintillion'}
  33. ${51} | ${'quinquagintillion'}
  34. ${61} | ${'sexagintillion'}
  35. ${71} | ${'septuagintillion'}
  36. ${81} | ${'octogintillion'}
  37. ${91} | ${'nonagintillion'}
  38. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  39. expect(getKiloName(thousandPower)).toBe(name)
  40. })
  41. test.each`
  42. thousandPower | name
  43. ${101} | ${'centillion'}
  44. ${201} | ${'duocentillion'}
  45. ${301} | ${'trecentillion'}
  46. ${401} | ${'quadringentillion'}
  47. ${501} | ${'quingentillion'}
  48. ${601} | ${'sescentillion'}
  49. ${701} | ${'septingentillion'}
  50. ${801} | ${'octingentillion'}
  51. ${901} | ${'nongentillion'}
  52. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  53. expect(getKiloName(thousandPower)).toBe(name)
  54. })
  55. test.each`
  56. thousandPower | name
  57. ${1001} | ${'milliatillion'}
  58. ${2001} | ${'duomilliatillion'}
  59. ${3001} | ${'tremilliatillion'}
  60. ${4001} | ${'quattuormilliatillion'}
  61. ${5001} | ${'quinmilliatillion'}
  62. ${6001} | ${'sexmilliatillion'}
  63. ${7001} | ${'septenmilliatillion'}
  64. ${8001} | ${'octomilliatillion'}
  65. ${9001} | ${'novemmilliatillion'}
  66. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  67. expect(getKiloName(thousandPower)).toBe(name)
  68. })
  69. test.each`
  70. thousandPower | name
  71. ${10001} | ${'decmilliatillion'}
  72. ${20001} | ${'viginmilliatillion'}
  73. ${30001} | ${'triginmilliatillion'}
  74. ${40001} | ${'quadraginmilliatillion'}
  75. ${50001} | ${'quinquaginmilliatillion'}
  76. ${60001} | ${'sexaginmilliatillion'}
  77. ${70001} | ${'septuaginmilliatillion'}
  78. ${80001} | ${'octoginmilliatillion'}
  79. ${90001} | ${'nonaginmilliatillion'}
  80. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  81. expect(getKiloName(thousandPower)).toBe(name)
  82. })
  83. test.each`
  84. thousandPower | name
  85. ${100001} | ${'cenmilliatillion'}
  86. ${200001} | ${'duocenmilliatillion'}
  87. ${300001} | ${'trecenmilliatillion'}
  88. ${400001} | ${'quadringenmilliatillion'}
  89. ${500001} | ${'quingenmilliatillion'}
  90. ${600001} | ${'sescenmilliatillion'}
  91. ${700001} | ${'septingenmilliatillion'}
  92. ${800001} | ${'octingenmilliatillion'}
  93. ${900001} | ${'nongenmilliatillion'}
  94. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  95. expect(getKiloName(thousandPower)).toBe(name)
  96. })
  97. test.each`
  98. thousandPower | name
  99. ${1000001} | ${'milliamilliatillion'}
  100. ${2000001} | ${'duomilliamilliatillion'}
  101. ${3000001} | ${'tremilliamilliatillion'}
  102. ${4000001} | ${'quattuormilliamilliatillion'}
  103. ${5000001} | ${'quinmilliamilliatillion'}
  104. ${6000001} | ${'sexmilliamilliatillion'}
  105. ${7000001} | ${'septenmilliamilliatillion'}
  106. ${8000001} | ${'octomilliamilliatillion'}
  107. ${9000001} | ${'novemmilliamilliatillion'}
  108. `('should return "$name" for 1000^$thousandPower', ({ name, thousandPower }) => {
  109. expect(getKiloName(thousandPower)).toBe(name)
  110. })