@rogolev/value 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +19 -1
  3. package/docs/classes/Value/constructor.md +48 -0
  4. package/docs/classes/Value/get.md +51 -0
  5. package/docs/classes/Value/getType.md +71 -0
  6. package/docs/classes/Value/isArray.md +67 -0
  7. package/docs/classes/Value/isAssoc.md +68 -0
  8. package/docs/classes/Value/isBigInt.md +52 -0
  9. package/docs/classes/Value/isBool.md +60 -0
  10. package/docs/classes/Value/isBoolean.md +60 -0
  11. package/docs/classes/Value/isClass.md +55 -0
  12. package/docs/classes/Value/isEmpty.md +84 -0
  13. package/docs/classes/Value/isFloat.md +52 -0
  14. package/docs/classes/Value/isFunction.md +60 -0
  15. package/docs/classes/Value/isInfinity.md +60 -0
  16. package/docs/classes/Value/isInt.md +52 -0
  17. package/docs/classes/Value/isInteger.md +52 -0
  18. package/docs/classes/Value/isList.md +59 -0
  19. package/docs/classes/Value/isNaN.md +79 -0
  20. package/docs/classes/Value/isNull.md +59 -0
  21. package/docs/classes/Value/isNumber.md +80 -0
  22. package/docs/classes/Value/isNumeric.md +79 -0
  23. package/docs/classes/Value/isObject.md +68 -0
  24. package/docs/classes/Value/isScalar.md +72 -0
  25. package/docs/classes/Value/isString.md +67 -0
  26. package/docs/classes/Value/isSymbol.md +75 -0
  27. package/docs/classes/Value/isUndefined.md +67 -0
  28. package/docs/classes/Value/print.md +164 -0
  29. package/docs/classes/Value/printType.md +158 -0
  30. package/docs/classes/Value/setType.md +79 -0
  31. package/docs/classes/Value/toArray.md +85 -0
  32. package/docs/classes/Value/toAssoc.md +85 -0
  33. package/docs/classes/Value/toBool.md +71 -0
  34. package/docs/classes/Value/toBoolean.md +71 -0
  35. package/docs/classes/Value/toFloat.md +72 -0
  36. package/docs/classes/Value/toInt.md +72 -0
  37. package/docs/classes/Value/toInteger.md +72 -0
  38. package/docs/classes/Value/toList.md +77 -0
  39. package/docs/classes/Value/toObject.md +78 -0
  40. package/docs/classes/Value/toPrint.md +115 -0
  41. package/docs/classes/Value/toPrintType.md +110 -0
  42. package/docs/classes/Value/toString.md +134 -0
  43. package/docs/classes/Value.md +113 -0
  44. package/docs/classes.md +2 -0
  45. package/docs/constants.md +47 -0
  46. package/docs/helpers/value.md +95 -0
  47. package/docs/helpers.md +2 -0
  48. package/index.mjs +3 -0
  49. package/package.json +2 -2
  50. package/src/classes/Convert.mjs +818 -819
  51. package/src/classes/Type.mjs +1284 -1285
  52. package/src/classes/Value.mjs +2846 -0
  53. package/src/constants.mjs +14 -0
  54. package/src/helpers/array.mjs +107 -107
  55. package/src/helpers/empty.mjs +70 -70
  56. package/src/helpers/gettype.mjs +149 -133
  57. package/src/helpers/is_array.mjs +128 -128
  58. package/src/helpers/is_assoc.mjs +51 -51
  59. package/src/helpers/is_bigint.mjs +47 -47
  60. package/src/helpers/is_bool.mjs +43 -43
  61. package/src/helpers/is_boolean.mjs +43 -43
  62. package/src/helpers/is_class.mjs +87 -87
  63. package/src/helpers/is_float.mjs +67 -67
  64. package/src/helpers/is_function.mjs +74 -74
  65. package/src/helpers/is_infinity.mjs +52 -52
  66. package/src/helpers/is_int.mjs +57 -57
  67. package/src/helpers/is_integer.mjs +74 -74
  68. package/src/helpers/is_list.mjs +43 -43
  69. package/src/helpers/is_nan.mjs +51 -51
  70. package/src/helpers/is_null.mjs +37 -37
  71. package/src/helpers/is_number.mjs +49 -49
  72. package/src/helpers/is_numeric.mjs +64 -64
  73. package/src/helpers/is_object.mjs +72 -72
  74. package/src/helpers/is_scalar.mjs +45 -45
  75. package/src/helpers/is_string.mjs +46 -46
  76. package/src/helpers/is_symbol.mjs +46 -46
  77. package/src/helpers/is_undefined.mjs +44 -44
  78. package/src/helpers/print.mjs +245 -245
  79. package/src/helpers/print_type.mjs +261 -261
  80. package/src/helpers/settype.mjs +101 -101
  81. package/src/helpers/to_array.mjs +118 -118
  82. package/src/helpers/to_assoc.mjs +98 -98
  83. package/src/helpers/to_bool.mjs +68 -68
  84. package/src/helpers/to_boolean.mjs +64 -64
  85. package/src/helpers/to_float.mjs +72 -72
  86. package/src/helpers/to_int.mjs +93 -93
  87. package/src/helpers/to_integer.mjs +81 -81
  88. package/src/helpers/to_list.mjs +56 -56
  89. package/src/helpers/to_object.mjs +94 -94
  90. package/src/helpers/to_string.mjs +157 -157
  91. package/src/helpers/value.mjs +92 -0
  92. package/tests/classes/Convert.test.mjs +398 -399
  93. package/tests/classes/Type.test.mjs +1262 -1263
  94. package/tests/classes/Value.test.mjs +423 -0
  95. package/tests/constants.test.mjs +75 -0
  96. package/tests/helpers/array.test.mjs +58 -58
  97. package/tests/helpers/empty.test.mjs +22 -22
  98. package/tests/helpers/gettype.test.mjs +74 -74
  99. package/tests/helpers/is_array.test.mjs +404 -404
  100. package/tests/helpers/is_assoc.test.mjs +42 -42
  101. package/tests/helpers/is_bigint.test.mjs +51 -51
  102. package/tests/helpers/is_bool.test.mjs +43 -43
  103. package/tests/helpers/is_boolean.test.mjs +43 -43
  104. package/tests/helpers/is_class.test.mjs +84 -84
  105. package/tests/helpers/is_float.test.mjs +87 -87
  106. package/tests/helpers/is_function.test.mjs +83 -83
  107. package/tests/helpers/is_infinity.test.mjs +46 -46
  108. package/tests/helpers/is_int.test.mjs +45 -45
  109. package/tests/helpers/is_integer.test.mjs +64 -64
  110. package/tests/helpers/is_list.test.mjs +42 -42
  111. package/tests/helpers/is_nan.test.mjs +43 -43
  112. package/tests/helpers/is_null.test.mjs +17 -17
  113. package/tests/helpers/is_number.test.mjs +25 -25
  114. package/tests/helpers/is_numeric.test.mjs +30 -30
  115. package/tests/helpers/is_object.test.mjs +52 -52
  116. package/tests/helpers/is_scalar.test.mjs +21 -21
  117. package/tests/helpers/is_string.test.mjs +20 -20
  118. package/tests/helpers/is_symbol.test.mjs +20 -20
  119. package/tests/helpers/is_undefined.test.mjs +18 -18
  120. package/tests/helpers/print.test.mjs +62 -62
  121. package/tests/helpers/print_type.test.mjs +62 -62
  122. package/tests/helpers/settype.test.mjs +34 -34
  123. package/tests/helpers/to_array.test.mjs +38 -38
  124. package/tests/helpers/to_assoc.test.mjs +33 -33
  125. package/tests/helpers/to_bool.test.mjs +51 -51
  126. package/tests/helpers/to_boolean.test.mjs +51 -51
  127. package/tests/helpers/to_float.test.mjs +26 -26
  128. package/tests/helpers/to_int.test.mjs +48 -48
  129. package/tests/helpers/to_integer.test.mjs +48 -48
  130. package/tests/helpers/to_list.test.mjs +32 -32
  131. package/tests/helpers/to_object.test.mjs +36 -36
  132. package/tests/helpers/to_string.test.mjs +71 -71
  133. package/tests/helpers/value.test.mjs +68 -0
@@ -1,51 +1,51 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { to_boolean } from '../../index.mjs';
3
-
4
- describe('Функция to_boolean', () => {
5
- test('Должна возвращать false для пустого массива', () => {
6
- expect(to_boolean([])).toBe(false);
7
- });
8
-
9
- test('Должна возвращать true для непустого массива', () => {
10
- expect(to_boolean([1, 2, 3])).toBe(true);
11
- });
12
-
13
- test('Должна возвращать false для пустого ассоциативного массива', () => {
14
- expect(to_boolean({})).toBe(false);
15
- });
16
-
17
- test('Должна возвращать true для непустого ассоциативного массива', () => {
18
- expect(to_boolean({ key: 'value' })).toBe(true);
19
- });
20
-
21
- test('Должна возвращать true для строки', () => {
22
- expect(to_boolean('example')).toBe(true);
23
- });
24
-
25
- test('Должна возвращать true для числа', () => {
26
- expect(to_boolean(123)).toBe(true);
27
- });
28
-
29
- test('Должна возвращать false для null и undefined', () => {
30
- expect(to_boolean(null)).toBe(false);
31
- expect(to_boolean(undefined)).toBe(false);
32
- });
33
-
34
- test('Должна возвращать true для булевых значений', () => {
35
- expect(to_boolean(true)).toBe(true);
36
- expect(to_boolean(false)).toBe(false);
37
- });
38
-
39
- test('Должна возвращать true для экземпляров класса', () => {
40
- class MyClass {}
41
-
42
- const instance = new MyClass();
43
- expect(to_boolean(instance)).toBe(true);
44
- });
45
-
46
- test('Должна возвращать true для классов', () => {
47
- class MyClass {}
48
-
49
- expect(to_boolean(MyClass)).toBe(true);
50
- });
51
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { to_boolean } from '../../index.mjs';
3
+
4
+ describe('Функция to_boolean', () => {
5
+ test('Должна возвращать false для пустого массива', () => {
6
+ expect(to_boolean([])).toBe(false);
7
+ });
8
+
9
+ test('Должна возвращать true для непустого массива', () => {
10
+ expect(to_boolean([1, 2, 3])).toBe(true);
11
+ });
12
+
13
+ test('Должна возвращать false для пустого ассоциативного массива', () => {
14
+ expect(to_boolean({})).toBe(false);
15
+ });
16
+
17
+ test('Должна возвращать true для непустого ассоциативного массива', () => {
18
+ expect(to_boolean({ key: 'value' })).toBe(true);
19
+ });
20
+
21
+ test('Должна возвращать true для строки', () => {
22
+ expect(to_boolean('example')).toBe(true);
23
+ });
24
+
25
+ test('Должна возвращать true для числа', () => {
26
+ expect(to_boolean(123)).toBe(true);
27
+ });
28
+
29
+ test('Должна возвращать false для null и undefined', () => {
30
+ expect(to_boolean(null)).toBe(false);
31
+ expect(to_boolean(undefined)).toBe(false);
32
+ });
33
+
34
+ test('Должна возвращать true для булевых значений', () => {
35
+ expect(to_boolean(true)).toBe(true);
36
+ expect(to_boolean(false)).toBe(false);
37
+ });
38
+
39
+ test('Должна возвращать true для экземпляров класса', () => {
40
+ class MyClass {}
41
+
42
+ const instance = new MyClass();
43
+ expect(to_boolean(instance)).toBe(true);
44
+ });
45
+
46
+ test('Должна возвращать true для классов', () => {
47
+ class MyClass {}
48
+
49
+ expect(to_boolean(MyClass)).toBe(true);
50
+ });
51
+ });
@@ -1,26 +1,26 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { to_float } from '../../index.mjs';
3
-
4
- describe('Функция to_float', () => {
5
- test('Должна возвращать число с плавающей точкой для строки', () => {
6
- expect(to_float('123.45')).toBe(123.45);
7
- });
8
-
9
- test('Должна возвращать число с плавающей точкой для целого числа', () => {
10
- expect(to_float(123)).toBe(123.0);
11
- });
12
-
13
- test('Должна возвращать 1 для true и 0 для false', () => {
14
- expect(to_float(true)).toBe(1.0);
15
- expect(to_float(false)).toBe(0.0);
16
- });
17
-
18
- test('Должна возвращать 0 для null и undefined', () => {
19
- expect(to_float(null)).toBe(0.0);
20
- expect(to_float(undefined)).toBe(0.0);
21
- });
22
-
23
- test('Должна возвращать 0 для нечисловых строк', () => {
24
- expect(to_float('example')).toBe(0.0);
25
- });
26
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { to_float } from '../../index.mjs';
3
+
4
+ describe('Функция to_float', () => {
5
+ test('Должна возвращать число с плавающей точкой для строки', () => {
6
+ expect(to_float('123.45')).toBe(123.45);
7
+ });
8
+
9
+ test('Должна возвращать число с плавающей точкой для целого числа', () => {
10
+ expect(to_float(123)).toBe(123.0);
11
+ });
12
+
13
+ test('Должна возвращать 1 для true и 0 для false', () => {
14
+ expect(to_float(true)).toBe(1.0);
15
+ expect(to_float(false)).toBe(0.0);
16
+ });
17
+
18
+ test('Должна возвращать 0 для null и undefined', () => {
19
+ expect(to_float(null)).toBe(0.0);
20
+ expect(to_float(undefined)).toBe(0.0);
21
+ });
22
+
23
+ test('Должна возвращать 0 для нечисловых строк', () => {
24
+ expect(to_float('example')).toBe(0.0);
25
+ });
26
+ });
@@ -1,48 +1,48 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { to_int } from '../../index.mjs';
3
-
4
- describe('Функция to_int', () => {
5
- test('Должна возвращать целое число для строки', () => {
6
- expect(to_int('123')).toBe(123);
7
- });
8
-
9
- test('Должна возвращать целое число для числа с плавающей точкой', () => {
10
- expect(to_int(123.45)).toBe(123);
11
- });
12
-
13
- test('Должна возвращать 1 для true и 0 для false', () => {
14
- expect(to_int(true)).toBe(1);
15
- expect(to_int(false)).toBe(0);
16
- });
17
-
18
- test('Должна возвращать 0 для null и undefined', () => {
19
- expect(to_int(null)).toBe(0);
20
- expect(to_int(undefined)).toBe(0);
21
- });
22
-
23
- test('Должна возвращать 0 для нечисловых строк', () => {
24
- expect(to_int('example')).toBe(0);
25
- });
26
-
27
- test('Должна возвращать целое число для строки с основанием системы счисления', () => {
28
- expect(to_int('10', 2)).toBe(2);
29
- expect(to_int('A', 16)).toBe(10);
30
- expect(to_int('7', 8)).toBe(7);
31
- });
32
-
33
- test('Должна возвращать целое число для строки с основанием системы счисления 2', () => {
34
- expect(to_int('1010', 2)).toBe(10);
35
- });
36
-
37
- test('Должна возвращать целое число для строки с основанием системы счисления 16', () => {
38
- expect(to_int('A', 16)).toBe(10);
39
- });
40
-
41
- test('Должна возвращать целое число для строки с основанием системы счисления 8', () => {
42
- expect(to_int('7', 8)).toBe(7);
43
- });
44
-
45
- test('Должна выбрасывать исключение для неверного значения параметра base', () => {
46
- expect(() => to_int('123', 'invalid')).toThrow(TypeError);
47
- });
48
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { to_int } from '../../index.mjs';
3
+
4
+ describe('Функция to_int', () => {
5
+ test('Должна возвращать целое число для строки', () => {
6
+ expect(to_int('123')).toBe(123);
7
+ });
8
+
9
+ test('Должна возвращать целое число для числа с плавающей точкой', () => {
10
+ expect(to_int(123.45)).toBe(123);
11
+ });
12
+
13
+ test('Должна возвращать 1 для true и 0 для false', () => {
14
+ expect(to_int(true)).toBe(1);
15
+ expect(to_int(false)).toBe(0);
16
+ });
17
+
18
+ test('Должна возвращать 0 для null и undefined', () => {
19
+ expect(to_int(null)).toBe(0);
20
+ expect(to_int(undefined)).toBe(0);
21
+ });
22
+
23
+ test('Должна возвращать 0 для нечисловых строк', () => {
24
+ expect(to_int('example')).toBe(0);
25
+ });
26
+
27
+ test('Должна возвращать целое число для строки с основанием системы счисления', () => {
28
+ expect(to_int('10', 2)).toBe(2);
29
+ expect(to_int('A', 16)).toBe(10);
30
+ expect(to_int('7', 8)).toBe(7);
31
+ });
32
+
33
+ test('Должна возвращать целое число для строки с основанием системы счисления 2', () => {
34
+ expect(to_int('1010', 2)).toBe(10);
35
+ });
36
+
37
+ test('Должна возвращать целое число для строки с основанием системы счисления 16', () => {
38
+ expect(to_int('A', 16)).toBe(10);
39
+ });
40
+
41
+ test('Должна возвращать целое число для строки с основанием системы счисления 8', () => {
42
+ expect(to_int('7', 8)).toBe(7);
43
+ });
44
+
45
+ test('Должна выбрасывать исключение для неверного значения параметра base', () => {
46
+ expect(() => to_int('123', 'invalid')).toThrow(TypeError);
47
+ });
48
+ });
@@ -1,48 +1,48 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { to_integer } from '../../index.mjs';
3
-
4
- describe('Функция to_integer', () => {
5
- test('Должна возвращать целое число для строки', () => {
6
- expect(to_integer('123')).toBe(123);
7
- });
8
-
9
- test('Должна возвращать целое число для числа с плавающей точкой', () => {
10
- expect(to_integer(123.45)).toBe(123);
11
- });
12
-
13
- test('Должна возвращать 1 для true и 0 для false', () => {
14
- expect(to_integer(true)).toBe(1);
15
- expect(to_integer(false)).toBe(0);
16
- });
17
-
18
- test('Должна возвращать 0 для null и undefined', () => {
19
- expect(to_integer(null)).toBe(0);
20
- expect(to_integer(undefined)).toBe(0);
21
- });
22
-
23
- test('Должна возвращать 0 для нечисловых строк', () => {
24
- expect(to_integer('example')).toBe(0);
25
- });
26
-
27
- test('Должна возвращать целое число для строки с основанием системы счисления', () => {
28
- expect(to_integer('10', 2)).toBe(2);
29
- expect(to_integer('A', 16)).toBe(10);
30
- expect(to_integer('7', 8)).toBe(7);
31
- });
32
-
33
- test('Должна возвращать целое число для строки с основанием системы счисления 2', () => {
34
- expect(to_integer('1010', 2)).toBe(10);
35
- });
36
-
37
- test('Должна возвращать целое число для строки с основанием системы счисления 16', () => {
38
- expect(to_integer('A', 16)).toBe(10);
39
- });
40
-
41
- test('Должна возвращать целое число для строки с основанием системы счисления 8', () => {
42
- expect(to_integer('7', 8)).toBe(7);
43
- });
44
-
45
- test('Должна выбрасывать исключение для неверного значения параметра base', () => {
46
- expect(() => to_integer('123', 'invalid')).toThrow(TypeError);
47
- });
48
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { to_integer } from '../../index.mjs';
3
+
4
+ describe('Функция to_integer', () => {
5
+ test('Должна возвращать целое число для строки', () => {
6
+ expect(to_integer('123')).toBe(123);
7
+ });
8
+
9
+ test('Должна возвращать целое число для числа с плавающей точкой', () => {
10
+ expect(to_integer(123.45)).toBe(123);
11
+ });
12
+
13
+ test('Должна возвращать 1 для true и 0 для false', () => {
14
+ expect(to_integer(true)).toBe(1);
15
+ expect(to_integer(false)).toBe(0);
16
+ });
17
+
18
+ test('Должна возвращать 0 для null и undefined', () => {
19
+ expect(to_integer(null)).toBe(0);
20
+ expect(to_integer(undefined)).toBe(0);
21
+ });
22
+
23
+ test('Должна возвращать 0 для нечисловых строк', () => {
24
+ expect(to_integer('example')).toBe(0);
25
+ });
26
+
27
+ test('Должна возвращать целое число для строки с основанием системы счисления', () => {
28
+ expect(to_integer('10', 2)).toBe(2);
29
+ expect(to_integer('A', 16)).toBe(10);
30
+ expect(to_integer('7', 8)).toBe(7);
31
+ });
32
+
33
+ test('Должна возвращать целое число для строки с основанием системы счисления 2', () => {
34
+ expect(to_integer('1010', 2)).toBe(10);
35
+ });
36
+
37
+ test('Должна возвращать целое число для строки с основанием системы счисления 16', () => {
38
+ expect(to_integer('A', 16)).toBe(10);
39
+ });
40
+
41
+ test('Должна возвращать целое число для строки с основанием системы счисления 8', () => {
42
+ expect(to_integer('7', 8)).toBe(7);
43
+ });
44
+
45
+ test('Должна выбрасывать исключение для неверного значения параметра base', () => {
46
+ expect(() => to_integer('123', 'invalid')).toThrow(TypeError);
47
+ });
48
+ });
@@ -1,32 +1,32 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { to_list } from '../../index.mjs';
3
-
4
- describe('Функция to_list', () => {
5
- test('должна возвращать пустой массив для null и undefined', () => {
6
- expect(to_list(null)).toEqual([]);
7
- expect(to_list(undefined)).toEqual([]);
8
- });
9
-
10
- test('должна возвращать исходный массив, если он передан', () => {
11
- const input = [1, 2, 3];
12
- expect(to_list(input)).toBe(input);
13
- });
14
-
15
- test('должна возвращать массив значений объекта, если передан ассоциативный массив', () => {
16
- const input = { key1: 'value1', key2: 'value2' };
17
- expect(to_list(input)).toEqual(['value1', 'value2']);
18
- });
19
-
20
- test('должна возвращать массив с примитивными значениями', () => {
21
- expect(to_list(true)).toEqual([true]);
22
- expect(to_list(false)).toEqual([false]);
23
- expect(to_list('example')).toEqual(['example']);
24
- expect(to_list(123)).toEqual([123]);
25
- });
26
-
27
- test('должна оборачивать экземпляр класса в массив', () => {
28
- class MyClass {}
29
- const instance = new MyClass();
30
- expect(to_list(instance)).toEqual([instance]);
31
- });
32
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { to_list } from '../../index.mjs';
3
+
4
+ describe('Функция to_list', () => {
5
+ test('должна возвращать пустой массив для null и undefined', () => {
6
+ expect(to_list(null)).toEqual([]);
7
+ expect(to_list(undefined)).toEqual([]);
8
+ });
9
+
10
+ test('должна возвращать исходный массив, если он передан', () => {
11
+ const input = [1, 2, 3];
12
+ expect(to_list(input)).toBe(input);
13
+ });
14
+
15
+ test('должна возвращать массив значений объекта, если передан ассоциативный массив', () => {
16
+ const input = { key1: 'value1', key2: 'value2' };
17
+ expect(to_list(input)).toEqual(['value1', 'value2']);
18
+ });
19
+
20
+ test('должна возвращать массив с примитивными значениями', () => {
21
+ expect(to_list(true)).toEqual([true]);
22
+ expect(to_list(false)).toEqual([false]);
23
+ expect(to_list('example')).toEqual(['example']);
24
+ expect(to_list(123)).toEqual([123]);
25
+ });
26
+
27
+ test('должна оборачивать экземпляр класса в массив', () => {
28
+ class MyClass {}
29
+ const instance = new MyClass();
30
+ expect(to_list(instance)).toEqual([instance]);
31
+ });
32
+ });
@@ -1,36 +1,36 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import to_object from '../../src/helpers/to_object.mjs';
3
-
4
- describe('Функция to_object', () => {
5
- test('Должна возвращать объект для объекта', () => {
6
- class MyClass {}
7
- const obj = new MyClass();
8
- expect(to_object(obj)).toBe(obj);
9
- });
10
-
11
- test('Должна возвращать экземпляр класса для класса', () => {
12
- class MyClass {}
13
- const instance = to_object(MyClass);
14
- expect(instance).toBeInstanceOf(MyClass);
15
- });
16
-
17
- test('Должна возвращать экземпляр анонимного класса для null и undefined', () => {
18
- expect(Object.getPrototypeOf(to_object(null)).constructor.name).toBe('');
19
- expect(Object.getPrototypeOf(to_object(undefined)).constructor.name).toBe('');
20
- });
21
-
22
- test('Должна возвращать объект с элементами массива для массива', () => {
23
- const arr = [1, 2, 3];
24
- const obj = to_object(arr);
25
- expect(Object.getPrototypeOf(obj).constructor.name).toBe('');
26
- expect(obj[0]).toBe(1);
27
- expect(obj[1]).toBe(2);
28
- expect(obj[2]).toBe(3);
29
- });
30
-
31
- test('Должна возвращать объект с полем value для других значений', () => {
32
- const obj = to_object('example');
33
- expect(Object.getPrototypeOf(obj).constructor.name).toBe('');
34
- expect(obj.value).toBe('example');
35
- });
36
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import to_object from '../../src/helpers/to_object.mjs';
3
+
4
+ describe('Функция to_object', () => {
5
+ test('Должна возвращать объект для объекта', () => {
6
+ class MyClass {}
7
+ const obj = new MyClass();
8
+ expect(to_object(obj)).toBe(obj);
9
+ });
10
+
11
+ test('Должна возвращать экземпляр класса для класса', () => {
12
+ class MyClass {}
13
+ const instance = to_object(MyClass);
14
+ expect(instance).toBeInstanceOf(MyClass);
15
+ });
16
+
17
+ test('Должна возвращать экземпляр анонимного класса для null и undefined', () => {
18
+ expect(Object.getPrototypeOf(to_object(null)).constructor.name).toBe('');
19
+ expect(Object.getPrototypeOf(to_object(undefined)).constructor.name).toBe('');
20
+ });
21
+
22
+ test('Должна возвращать объект с элементами массива для массива', () => {
23
+ const arr = [1, 2, 3];
24
+ const obj = to_object(arr);
25
+ expect(Object.getPrototypeOf(obj).constructor.name).toBe('');
26
+ expect(obj[0]).toBe(1);
27
+ expect(obj[1]).toBe(2);
28
+ expect(obj[2]).toBe(3);
29
+ });
30
+
31
+ test('Должна возвращать объект с полем value для других значений', () => {
32
+ const obj = to_object('example');
33
+ expect(Object.getPrototypeOf(obj).constructor.name).toBe('');
34
+ expect(obj.value).toBe('example');
35
+ });
36
+ });
@@ -1,71 +1,71 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { to_string } from '../../index.mjs';
3
-
4
- describe('Функция to_string', () => {
5
- test('Должна возвращать строку для строки', () => {
6
- expect(to_string('example')).toBe('example');
7
- });
8
-
9
- test('Должна возвращать строку для числа', () => {
10
- expect(to_string(123)).toBe('123');
11
- expect(to_string(123.45)).toBe('123.45');
12
- });
13
-
14
- test('Должна возвращать строку для булевых значений', () => {
15
- expect(to_string(true)).toBe('true');
16
- expect(to_string(false)).toBe('false');
17
- });
18
-
19
- test('Должна возвращать строку для null и undefined', () => {
20
- expect(to_string(null)).toBe('null');
21
- expect(to_string(undefined)).toBe('undefined');
22
- });
23
-
24
- test('Должна возвращать строку для ассоциативных массивов', () => {
25
- const obj = { key: 'value' };
26
- expect(to_string(obj)).toBe("{\n key: 'value',\n}");
27
- expect(to_string({})).toBe('{}');
28
- });
29
-
30
- test('Должна возвращать строку для массивов', () => {
31
- const arr = [1, [2], 3];
32
- expect(to_string(arr)).toBe('[\n 1,\n [\n 2,\n ],\n 3,\n]');
33
- expect(to_string([])).toBe('[]');
34
- });
35
-
36
- test('Должна возвращать строку для именованной функции', () => {
37
- const func = function () {};
38
- expect(to_string(func)).toBe('function func() {}');
39
- });
40
-
41
- test('Должна возвращать строку для безымянной функции', () => {
42
- expect(to_string(() => {})).toBe('function () {}');
43
- });
44
-
45
- test('Должна возвращать строку для символов', () => {
46
- const symbol = Symbol('example');
47
- expect(to_string(symbol)).toBe('Symbol(example)');
48
- });
49
-
50
- test('Должна возвращать строку для BigInt', () => {
51
- const bigInt = BigInt(123);
52
- expect(to_string(bigInt)).toBe('123');
53
- });
54
-
55
- test('Должна возвращать строку для именованного класса', () => {
56
- class MyClass {
57
- static test = 'test';
58
- }
59
- expect(to_string(MyClass)).toBe('class MyClass {}');
60
- });
61
-
62
- test('Должна возвращать строку для безымянного класса', () => {
63
- expect(to_string(class {})).toBe('class {}');
64
- });
65
-
66
- test('Должна возвращать строку для экземпляров классов', () => {
67
- class MyClass {}
68
- const instance = new MyClass();
69
- expect(to_string(instance)).toBe('object MyClass');
70
- });
71
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { to_string } from '../../index.mjs';
3
+
4
+ describe('Функция to_string', () => {
5
+ test('Должна возвращать строку для строки', () => {
6
+ expect(to_string('example')).toBe('example');
7
+ });
8
+
9
+ test('Должна возвращать строку для числа', () => {
10
+ expect(to_string(123)).toBe('123');
11
+ expect(to_string(123.45)).toBe('123.45');
12
+ });
13
+
14
+ test('Должна возвращать строку для булевых значений', () => {
15
+ expect(to_string(true)).toBe('true');
16
+ expect(to_string(false)).toBe('false');
17
+ });
18
+
19
+ test('Должна возвращать строку для null и undefined', () => {
20
+ expect(to_string(null)).toBe('null');
21
+ expect(to_string(undefined)).toBe('undefined');
22
+ });
23
+
24
+ test('Должна возвращать строку для ассоциативных массивов', () => {
25
+ const obj = { key: 'value' };
26
+ expect(to_string(obj)).toBe("{\n key: 'value',\n}");
27
+ expect(to_string({})).toBe('{}');
28
+ });
29
+
30
+ test('Должна возвращать строку для массивов', () => {
31
+ const arr = [1, [2], 3];
32
+ expect(to_string(arr)).toBe('[\n 1,\n [\n 2,\n ],\n 3,\n]');
33
+ expect(to_string([])).toBe('[]');
34
+ });
35
+
36
+ test('Должна возвращать строку для именованной функции', () => {
37
+ const func = function () {};
38
+ expect(to_string(func)).toBe('function func() {}');
39
+ });
40
+
41
+ test('Должна возвращать строку для безымянной функции', () => {
42
+ expect(to_string(() => {})).toBe('function () {}');
43
+ });
44
+
45
+ test('Должна возвращать строку для символов', () => {
46
+ const symbol = Symbol('example');
47
+ expect(to_string(symbol)).toBe('Symbol(example)');
48
+ });
49
+
50
+ test('Должна возвращать строку для BigInt', () => {
51
+ const bigInt = BigInt(123);
52
+ expect(to_string(bigInt)).toBe('123');
53
+ });
54
+
55
+ test('Должна возвращать строку для именованного класса', () => {
56
+ class MyClass {
57
+ static test = 'test';
58
+ }
59
+ expect(to_string(MyClass)).toBe('class MyClass {}');
60
+ });
61
+
62
+ test('Должна возвращать строку для безымянного класса', () => {
63
+ expect(to_string(class {})).toBe('class {}');
64
+ });
65
+
66
+ test('Должна возвращать строку для экземпляров классов', () => {
67
+ class MyClass {}
68
+ const instance = new MyClass();
69
+ expect(to_string(instance)).toBe('object MyClass');
70
+ });
71
+ });