NumberUtils.spec.ts 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. import { assert } from 'chai';
  2. import { NumberUtils } from '../../../src/utils/NumberUtils';
  3. describe('NumberUtils', () => {
  4. describe('toHex', () => {
  5. describe('Variant #1: number `0`', () => {
  6. const number: number = 0;
  7. const expectedHexString = '0';
  8. let hexString: string;
  9. before(() => {
  10. hexString = NumberUtils.toHex(number);
  11. });
  12. it('should create a string with hexadecimal value from a given decimal number', () => {
  13. assert.equal(hexString, expectedHexString);
  14. });
  15. });
  16. describe('Variant #2: number `10`', () => {
  17. const number: number = 10;
  18. const expectedHexString = 'a';
  19. let hexString: string;
  20. before(() => {
  21. hexString = NumberUtils.toHex(number);
  22. });
  23. it('should create a string with hexadecimal value from a given decimal number', () => {
  24. assert.equal(hexString, expectedHexString);
  25. });
  26. });
  27. describe('Variant #3: number `17`', () => {
  28. const number: number = 17;
  29. const expectedHexString = '11';
  30. let hexString: string;
  31. before(() => {
  32. hexString = NumberUtils.toHex(number);
  33. });
  34. it('should create a string with hexadecimal value from a given decimal number', () => {
  35. assert.equal(hexString, expectedHexString);
  36. });
  37. });
  38. describe('Variant #4: number `536870912`', () => {
  39. const number: number = 536870912;
  40. const expectedHexString = '20000000';
  41. let hexString: string;
  42. before(() => {
  43. hexString = NumberUtils.toHex(number);
  44. });
  45. it('should create a string with hexadecimal value from a given decimal number', () => {
  46. assert.equal(hexString, expectedHexString);
  47. });
  48. });
  49. });
  50. describe('isCeil', () => {
  51. describe('given number is a ceil', () => {
  52. const number: number = 4;
  53. const expectedResult: boolean = true;
  54. let result: boolean;
  55. before(() => {
  56. result = NumberUtils.isCeil(number);
  57. });
  58. it('should return true', () => {
  59. assert.equal(result, expectedResult);
  60. });
  61. });
  62. describe('given number is a float', () => {
  63. const number: number = 4.5;
  64. const expectedResult: boolean = false;
  65. let result: boolean;
  66. before(() => {
  67. result = NumberUtils.isCeil(number);
  68. });
  69. it('should return false', () => {
  70. assert.equal(result, expectedResult);
  71. });
  72. });
  73. });
  74. });