@rogolev/value 0.0.1 → 0.0.2

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 (176) hide show
  1. package/.prettierignore +4 -4
  2. package/CHANGELOG.md +68 -56
  3. package/LICENSE +41 -41
  4. package/README.md +100 -91
  5. package/babel.config.json +20 -20
  6. package/docs/classes/Convert/toArray.md +100 -0
  7. package/docs/classes/Convert/toAssoc.md +90 -0
  8. package/docs/classes/Convert/toBool.md +72 -0
  9. package/docs/classes/Convert/toBoolean.md +72 -0
  10. package/docs/classes/Convert/toFloat.md +69 -0
  11. package/docs/classes/Convert/toInt.md +86 -0
  12. package/docs/classes/Convert/toInteger.md +86 -0
  13. package/docs/classes/Convert/toList.md +73 -0
  14. package/docs/classes/Convert/toObject.md +76 -0
  15. package/docs/classes/Convert/toString.md +125 -0
  16. package/docs/classes/Convert.md +44 -0
  17. package/docs/classes/Type/isArray.md +106 -0
  18. package/docs/classes/Type/isAssoc.md +57 -0
  19. package/docs/classes/Type/isBigInt.md +49 -0
  20. package/docs/classes/Type/isBool.md +51 -0
  21. package/docs/classes/Type/isBoolean.md +51 -0
  22. package/docs/classes/Type/isClass.md +60 -0
  23. package/docs/classes/Type/isEmpty.md +53 -0
  24. package/docs/classes/Type/isFloat.md +77 -0
  25. package/docs/classes/Type/isFunction.md +64 -0
  26. package/docs/classes/Type/isInfinity.md +59 -0
  27. package/docs/classes/Type/isInt.md +77 -0
  28. package/docs/classes/Type/isInteger.md +77 -0
  29. package/docs/classes/Type/isList.md +49 -0
  30. package/docs/classes/Type/isNaN.md +57 -0
  31. package/docs/classes/Type/isNull.md +49 -0
  32. package/docs/classes/Type/isNumber.md +60 -0
  33. package/docs/classes/Type/isNumeric.md +58 -0
  34. package/docs/classes/Type/isObject.md +53 -0
  35. package/docs/classes/Type/isScalar.md +54 -0
  36. package/docs/classes/Type/isString.md +54 -0
  37. package/docs/classes/Type/isSymbol.md +56 -0
  38. package/docs/classes/Type/isUndefined.md +52 -0
  39. package/docs/classes/Type.md +74 -0
  40. package/docs/classes.md +9 -0
  41. package/docs/helpers/array.md +80 -80
  42. package/docs/helpers/empty.md +77 -77
  43. package/docs/helpers/gettype.md +69 -69
  44. package/docs/helpers/is_array.md +105 -105
  45. package/docs/helpers/is_assoc.md +59 -59
  46. package/docs/helpers/is_bigint.md +57 -57
  47. package/docs/helpers/is_bool.md +50 -50
  48. package/docs/helpers/is_boolean.md +50 -50
  49. package/docs/helpers/is_class.md +73 -73
  50. package/docs/helpers/is_float.md +71 -71
  51. package/docs/helpers/is_function.md +62 -62
  52. package/docs/helpers/is_infinity.md +61 -61
  53. package/docs/helpers/is_int.md +81 -81
  54. package/docs/helpers/is_integer.md +82 -82
  55. package/docs/helpers/is_list.md +51 -51
  56. package/docs/helpers/is_nan.md +59 -59
  57. package/docs/helpers/is_null.md +49 -49
  58. package/docs/helpers/is_number.md +67 -67
  59. package/docs/helpers/is_numeric.md +76 -76
  60. package/docs/helpers/is_object.md +69 -69
  61. package/docs/helpers/is_scalar.md +60 -60
  62. package/docs/helpers/is_string.md +58 -58
  63. package/docs/helpers/is_symbol.md +58 -58
  64. package/docs/helpers/is_undefined.md +56 -56
  65. package/docs/helpers/print.md +187 -187
  66. package/docs/helpers/print_type.md +225 -225
  67. package/docs/helpers/settype.md +78 -78
  68. package/docs/helpers/to_array.md +106 -106
  69. package/docs/helpers/to_assoc.md +91 -91
  70. package/docs/helpers/to_bool.md +76 -76
  71. package/docs/helpers/to_boolean.md +77 -77
  72. package/docs/helpers/to_float.md +70 -70
  73. package/docs/helpers/to_int.md +87 -87
  74. package/docs/helpers/to_integer.md +87 -87
  75. package/docs/helpers/to_list.md +47 -47
  76. package/docs/helpers/to_object.md +76 -76
  77. package/docs/helpers/to_string.md +134 -134
  78. package/docs/helpers.md +51 -51
  79. package/docs/types/NaN.md +30 -30
  80. package/docs/types/array.md +252 -252
  81. package/docs/types/bigint.md +34 -34
  82. package/docs/types/boolean.md +47 -47
  83. package/docs/types/class.md +36 -36
  84. package/docs/types/float.md +35 -35
  85. package/docs/types/function.md +121 -121
  86. package/docs/types/infinity.md +32 -32
  87. package/docs/types/integer.md +35 -35
  88. package/docs/types/null.md +23 -23
  89. package/docs/types/object.md +62 -62
  90. package/docs/types/string.md +33 -33
  91. package/docs/types/symbol.md +29 -29
  92. package/docs/types/undefined.md +25 -25
  93. package/docs/types.md +44 -44
  94. package/eslint.config.mjs +1664 -1664
  95. package/index.mjs +40 -37
  96. package/jest.config.mjs +31 -31
  97. package/package.json +48 -47
  98. package/prettier.config.mjs +224 -224
  99. package/src/classes/Convert.mjs +819 -0
  100. package/src/classes/Type.mjs +1285 -0
  101. package/src/helpers/array.mjs +107 -107
  102. package/src/helpers/empty.mjs +70 -70
  103. package/src/helpers/gettype.mjs +133 -133
  104. package/src/helpers/is_array.mjs +128 -128
  105. package/src/helpers/is_assoc.mjs +51 -51
  106. package/src/helpers/is_bigint.mjs +47 -47
  107. package/src/helpers/is_bool.mjs +43 -43
  108. package/src/helpers/is_boolean.mjs +43 -43
  109. package/src/helpers/is_class.mjs +87 -87
  110. package/src/helpers/is_float.mjs +67 -67
  111. package/src/helpers/is_function.mjs +74 -74
  112. package/src/helpers/is_infinity.mjs +52 -52
  113. package/src/helpers/is_int.mjs +57 -57
  114. package/src/helpers/is_integer.mjs +74 -74
  115. package/src/helpers/is_list.mjs +43 -43
  116. package/src/helpers/is_nan.mjs +51 -51
  117. package/src/helpers/is_null.mjs +37 -37
  118. package/src/helpers/is_number.mjs +49 -49
  119. package/src/helpers/is_numeric.mjs +64 -64
  120. package/src/helpers/is_object.mjs +72 -72
  121. package/src/helpers/is_scalar.mjs +45 -45
  122. package/src/helpers/is_string.mjs +46 -46
  123. package/src/helpers/is_symbol.mjs +46 -46
  124. package/src/helpers/is_undefined.mjs +44 -44
  125. package/src/helpers/print.mjs +245 -245
  126. package/src/helpers/print_type.mjs +261 -261
  127. package/src/helpers/settype.mjs +101 -101
  128. package/src/helpers/to_array.mjs +118 -118
  129. package/src/helpers/to_assoc.mjs +98 -98
  130. package/src/helpers/to_bool.mjs +68 -68
  131. package/src/helpers/to_boolean.mjs +64 -64
  132. package/src/helpers/to_float.mjs +72 -72
  133. package/src/helpers/to_int.mjs +93 -93
  134. package/src/helpers/to_integer.mjs +81 -81
  135. package/src/helpers/to_list.mjs +56 -56
  136. package/src/helpers/to_object.mjs +94 -94
  137. package/src/helpers/to_string.mjs +157 -157
  138. package/tests/classes/Convert.test.mjs +399 -0
  139. package/tests/classes/Type.test.mjs +1263 -0
  140. package/tests/helpers/array.test.mjs +58 -58
  141. package/tests/helpers/empty.test.mjs +22 -22
  142. package/tests/helpers/gettype.test.mjs +74 -74
  143. package/tests/helpers/is_array.test.mjs +404 -404
  144. package/tests/helpers/is_assoc.test.mjs +42 -42
  145. package/tests/helpers/is_bigint.test.mjs +51 -51
  146. package/tests/helpers/is_bool.test.mjs +43 -43
  147. package/tests/helpers/is_boolean.test.mjs +43 -43
  148. package/tests/helpers/is_class.test.mjs +84 -84
  149. package/tests/helpers/is_float.test.mjs +87 -87
  150. package/tests/helpers/is_function.test.mjs +83 -83
  151. package/tests/helpers/is_infinity.test.mjs +46 -46
  152. package/tests/helpers/is_int.test.mjs +45 -45
  153. package/tests/helpers/is_integer.test.mjs +64 -64
  154. package/tests/helpers/is_list.test.mjs +42 -42
  155. package/tests/helpers/is_nan.test.mjs +43 -43
  156. package/tests/helpers/is_null.test.mjs +17 -17
  157. package/tests/helpers/is_number.test.mjs +25 -25
  158. package/tests/helpers/is_numeric.test.mjs +30 -30
  159. package/tests/helpers/is_object.test.mjs +52 -52
  160. package/tests/helpers/is_scalar.test.mjs +21 -21
  161. package/tests/helpers/is_string.test.mjs +20 -20
  162. package/tests/helpers/is_symbol.test.mjs +20 -20
  163. package/tests/helpers/is_undefined.test.mjs +18 -18
  164. package/tests/helpers/print.test.mjs +62 -62
  165. package/tests/helpers/print_type.test.mjs +62 -62
  166. package/tests/helpers/settype.test.mjs +34 -34
  167. package/tests/helpers/to_array.test.mjs +38 -38
  168. package/tests/helpers/to_assoc.test.mjs +33 -33
  169. package/tests/helpers/to_bool.test.mjs +51 -51
  170. package/tests/helpers/to_boolean.test.mjs +51 -51
  171. package/tests/helpers/to_float.test.mjs +26 -26
  172. package/tests/helpers/to_int.test.mjs +48 -48
  173. package/tests/helpers/to_integer.test.mjs +48 -48
  174. package/tests/helpers/to_list.test.mjs +32 -32
  175. package/tests/helpers/to_object.test.mjs +36 -36
  176. package/tests/helpers/to_string.test.mjs +71 -71
@@ -1,42 +1,42 @@
1
- import { expect, test } from '@jest/globals';
2
- import { is_assoc } from '../../index.mjs';
3
-
4
- describe('Функция is_assoc', () => {
5
- test('должна возвращать true для ассоциативных массивов', () => {
6
- expect(is_assoc({ foo: 'bar' })).toBe(true);
7
- expect(is_assoc({})).toBe(true);
8
- });
9
-
10
- test('должна возвращать false для обычных массивов', () => {
11
- expect(is_assoc([])).toBe(false);
12
- expect(is_assoc([1, 2, 3])).toBe(false);
13
- });
14
-
15
- test('должна возвращать false для строк', () => {
16
- expect(is_assoc('string')).toBe(false);
17
- });
18
-
19
- test('должна возвращать false для чисел', () => {
20
- expect(is_assoc(42)).toBe(false);
21
- });
22
-
23
- test('должна возвращать false для null и undefined', () => {
24
- expect(is_assoc(null)).toBe(false);
25
- expect(is_assoc(undefined)).toBe(false);
26
- });
27
-
28
- test('должна возвращать false для логических значений', () => {
29
- expect(is_assoc(true)).toBe(false);
30
- expect(is_assoc(false)).toBe(false);
31
- });
32
-
33
- test('должна возвращать false для функций', () => {
34
- function func() {}
35
- expect(is_assoc(func)).toBe(false);
36
- expect(is_assoc(() => {})).toBe(false);
37
- });
38
-
39
- test('должна возвращать false для символов', () => {
40
- expect(is_assoc(Symbol('symbol'))).toBe(false);
41
- });
42
- });
1
+ import { expect, test } from '@jest/globals';
2
+ import { is_assoc } from '../../index.mjs';
3
+
4
+ describe('Функция is_assoc', () => {
5
+ test('должна возвращать true для ассоциативных массивов', () => {
6
+ expect(is_assoc({ foo: 'bar' })).toBe(true);
7
+ expect(is_assoc({})).toBe(true);
8
+ });
9
+
10
+ test('должна возвращать false для обычных массивов', () => {
11
+ expect(is_assoc([])).toBe(false);
12
+ expect(is_assoc([1, 2, 3])).toBe(false);
13
+ });
14
+
15
+ test('должна возвращать false для строк', () => {
16
+ expect(is_assoc('string')).toBe(false);
17
+ });
18
+
19
+ test('должна возвращать false для чисел', () => {
20
+ expect(is_assoc(42)).toBe(false);
21
+ });
22
+
23
+ test('должна возвращать false для null и undefined', () => {
24
+ expect(is_assoc(null)).toBe(false);
25
+ expect(is_assoc(undefined)).toBe(false);
26
+ });
27
+
28
+ test('должна возвращать false для логических значений', () => {
29
+ expect(is_assoc(true)).toBe(false);
30
+ expect(is_assoc(false)).toBe(false);
31
+ });
32
+
33
+ test('должна возвращать false для функций', () => {
34
+ function func() {}
35
+ expect(is_assoc(func)).toBe(false);
36
+ expect(is_assoc(() => {})).toBe(false);
37
+ });
38
+
39
+ test('должна возвращать false для символов', () => {
40
+ expect(is_assoc(Symbol('symbol'))).toBe(false);
41
+ });
42
+ });
@@ -1,51 +1,51 @@
1
- import { expect, test } from '@jest/globals';
2
- import { is_bigint } from '../../index.mjs';
3
-
4
- describe('Функция is_bigint', () => {
5
- test('должна возвращать true для значений типа bigint', () => {
6
- expect(is_bigint(BigInt(123456))).toBe(true);
7
- expect(is_bigint(BigInt(-123456))).toBe(true);
8
- });
9
-
10
- test('должна возвращать false для чисел', () => {
11
- expect(is_bigint(42)).toBe(false);
12
- expect(is_bigint(-42)).toBe(false);
13
- expect(is_bigint(0)).toBe(false);
14
- expect(is_bigint(3.14)).toBe(false);
15
- expect(is_bigint(-0.99)).toBe(false);
16
- });
17
-
18
- test('должна возвращать false для специальных чисел', () => {
19
- expect(is_bigint(NaN)).toBe(false);
20
- expect(is_bigint(Infinity)).toBe(false);
21
- expect(is_bigint(-Infinity)).toBe(false);
22
- });
23
-
24
- test('должна возвращать false для строк', () => {
25
- expect(is_bigint('42')).toBe(false);
26
- expect(is_bigint('3.14')).toBe(false);
27
- expect(is_bigint('')).toBe(false);
28
- });
29
-
30
- test('должна возвращать false для логических значений', () => {
31
- expect(is_bigint(true)).toBe(false);
32
- expect(is_bigint(false)).toBe(false);
33
- });
34
-
35
- test('должна возвращать false для null и undefined', () => {
36
- expect(is_bigint(null)).toBe(false);
37
- expect(is_bigint(undefined)).toBe(false);
38
- });
39
-
40
- test('должна возвращать false для объектов и массивов', () => {
41
- expect(is_bigint({})).toBe(false);
42
- expect(is_bigint([])).toBe(false);
43
- expect(is_bigint({ foo: 42 })).toBe(false);
44
- expect(is_bigint([1, 2, 3])).toBe(false);
45
- });
46
-
47
- test('должна возвращать false для функций', () => {
48
- expect(is_bigint(() => {})).toBe(false);
49
- expect(is_bigint(() => {})).toBe(false);
50
- });
51
- });
1
+ import { expect, test } from '@jest/globals';
2
+ import { is_bigint } from '../../index.mjs';
3
+
4
+ describe('Функция is_bigint', () => {
5
+ test('должна возвращать true для значений типа bigint', () => {
6
+ expect(is_bigint(BigInt(123456))).toBe(true);
7
+ expect(is_bigint(BigInt(-123456))).toBe(true);
8
+ });
9
+
10
+ test('должна возвращать false для чисел', () => {
11
+ expect(is_bigint(42)).toBe(false);
12
+ expect(is_bigint(-42)).toBe(false);
13
+ expect(is_bigint(0)).toBe(false);
14
+ expect(is_bigint(3.14)).toBe(false);
15
+ expect(is_bigint(-0.99)).toBe(false);
16
+ });
17
+
18
+ test('должна возвращать false для специальных чисел', () => {
19
+ expect(is_bigint(NaN)).toBe(false);
20
+ expect(is_bigint(Infinity)).toBe(false);
21
+ expect(is_bigint(-Infinity)).toBe(false);
22
+ });
23
+
24
+ test('должна возвращать false для строк', () => {
25
+ expect(is_bigint('42')).toBe(false);
26
+ expect(is_bigint('3.14')).toBe(false);
27
+ expect(is_bigint('')).toBe(false);
28
+ });
29
+
30
+ test('должна возвращать false для логических значений', () => {
31
+ expect(is_bigint(true)).toBe(false);
32
+ expect(is_bigint(false)).toBe(false);
33
+ });
34
+
35
+ test('должна возвращать false для null и undefined', () => {
36
+ expect(is_bigint(null)).toBe(false);
37
+ expect(is_bigint(undefined)).toBe(false);
38
+ });
39
+
40
+ test('должна возвращать false для объектов и массивов', () => {
41
+ expect(is_bigint({})).toBe(false);
42
+ expect(is_bigint([])).toBe(false);
43
+ expect(is_bigint({ foo: 42 })).toBe(false);
44
+ expect(is_bigint([1, 2, 3])).toBe(false);
45
+ });
46
+
47
+ test('должна возвращать false для функций', () => {
48
+ expect(is_bigint(() => {})).toBe(false);
49
+ expect(is_bigint(() => {})).toBe(false);
50
+ });
51
+ });
@@ -1,43 +1,43 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { is_bool } from '../../index.mjs';
3
-
4
- describe('Функция is_bool', () => {
5
- test('должна возвращать true для значения true', () => {
6
- expect(is_bool(true)).toBe(true);
7
- });
8
-
9
- test('должна возвращать true для значения false', () => {
10
- expect(is_bool(false)).toBe(true);
11
- });
12
-
13
- test('должна возвращать false для значения числа', () => {
14
- expect(is_bool(0)).toBe(false);
15
- expect(is_bool(1)).toBe(false);
16
- });
17
-
18
- test('должна возвращать false для строки', () => {
19
- expect(is_bool('true')).toBe(false);
20
- expect(is_bool('false')).toBe(false);
21
- });
22
-
23
- test('должна возвращать false для объекта', () => {
24
- expect(is_bool({})).toBe(false);
25
- expect(is_bool([])).toBe(false);
26
- });
27
-
28
- test('должна возвращать false для null', () => {
29
- expect(is_bool(null)).toBe(false);
30
- });
31
-
32
- test('должна возвращать false для undefined', () => {
33
- expect(is_bool(undefined)).toBe(false);
34
- });
35
-
36
- test('должна возвращать false для функции', () => {
37
- expect(is_bool(() => {})).toBe(false);
38
- });
39
-
40
- test('должна возвращать false для объекта Boolean', () => {
41
- expect(is_bool(new Boolean(true))).toBe(false);
42
- });
43
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { is_bool } from '../../index.mjs';
3
+
4
+ describe('Функция is_bool', () => {
5
+ test('должна возвращать true для значения true', () => {
6
+ expect(is_bool(true)).toBe(true);
7
+ });
8
+
9
+ test('должна возвращать true для значения false', () => {
10
+ expect(is_bool(false)).toBe(true);
11
+ });
12
+
13
+ test('должна возвращать false для значения числа', () => {
14
+ expect(is_bool(0)).toBe(false);
15
+ expect(is_bool(1)).toBe(false);
16
+ });
17
+
18
+ test('должна возвращать false для строки', () => {
19
+ expect(is_bool('true')).toBe(false);
20
+ expect(is_bool('false')).toBe(false);
21
+ });
22
+
23
+ test('должна возвращать false для объекта', () => {
24
+ expect(is_bool({})).toBe(false);
25
+ expect(is_bool([])).toBe(false);
26
+ });
27
+
28
+ test('должна возвращать false для null', () => {
29
+ expect(is_bool(null)).toBe(false);
30
+ });
31
+
32
+ test('должна возвращать false для undefined', () => {
33
+ expect(is_bool(undefined)).toBe(false);
34
+ });
35
+
36
+ test('должна возвращать false для функции', () => {
37
+ expect(is_bool(() => {})).toBe(false);
38
+ });
39
+
40
+ test('должна возвращать false для объекта Boolean', () => {
41
+ expect(is_bool(new Boolean(true))).toBe(false);
42
+ });
43
+ });
@@ -1,43 +1,43 @@
1
- import { expect, test, describe } from '@jest/globals';
2
- import { is_boolean } from '../../index.mjs';
3
-
4
- describe('Функция is_boolean', () => {
5
- test('должна возвращать true для значения true', () => {
6
- expect(is_boolean(true)).toBe(true);
7
- });
8
-
9
- test('должна возвращать true для значения false', () => {
10
- expect(is_boolean(false)).toBe(true);
11
- });
12
-
13
- test('должна возвращать false для значения числа', () => {
14
- expect(is_boolean(0)).toBe(false);
15
- expect(is_boolean(1)).toBe(false);
16
- });
17
-
18
- test('должна возвращать false для строки', () => {
19
- expect(is_boolean('true')).toBe(false);
20
- expect(is_boolean('false')).toBe(false);
21
- });
22
-
23
- test('должна возвращать false для объекта', () => {
24
- expect(is_boolean({})).toBe(false);
25
- expect(is_boolean([])).toBe(false);
26
- });
27
-
28
- test('должна возвращать false для null', () => {
29
- expect(is_boolean(null)).toBe(false);
30
- });
31
-
32
- test('должна возвращать false для undefined', () => {
33
- expect(is_boolean(undefined)).toBe(false);
34
- });
35
-
36
- test('должна возвращать false для функции', () => {
37
- expect(is_boolean(() => {})).toBe(false);
38
- });
39
-
40
- test('должна возвращать false для объекта Boolean', () => {
41
- expect(is_boolean(new Boolean(true))).toBe(false);
42
- });
43
- });
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { is_boolean } from '../../index.mjs';
3
+
4
+ describe('Функция is_boolean', () => {
5
+ test('должна возвращать true для значения true', () => {
6
+ expect(is_boolean(true)).toBe(true);
7
+ });
8
+
9
+ test('должна возвращать true для значения false', () => {
10
+ expect(is_boolean(false)).toBe(true);
11
+ });
12
+
13
+ test('должна возвращать false для значения числа', () => {
14
+ expect(is_boolean(0)).toBe(false);
15
+ expect(is_boolean(1)).toBe(false);
16
+ });
17
+
18
+ test('должна возвращать false для строки', () => {
19
+ expect(is_boolean('true')).toBe(false);
20
+ expect(is_boolean('false')).toBe(false);
21
+ });
22
+
23
+ test('должна возвращать false для объекта', () => {
24
+ expect(is_boolean({})).toBe(false);
25
+ expect(is_boolean([])).toBe(false);
26
+ });
27
+
28
+ test('должна возвращать false для null', () => {
29
+ expect(is_boolean(null)).toBe(false);
30
+ });
31
+
32
+ test('должна возвращать false для undefined', () => {
33
+ expect(is_boolean(undefined)).toBe(false);
34
+ });
35
+
36
+ test('должна возвращать false для функции', () => {
37
+ expect(is_boolean(() => {})).toBe(false);
38
+ });
39
+
40
+ test('должна возвращать false для объекта Boolean', () => {
41
+ expect(is_boolean(new Boolean(true))).toBe(false);
42
+ });
43
+ });
@@ -1,84 +1,84 @@
1
- import { expect, test } from '@jest/globals';
2
- import { is_class } from '../../index.mjs';
3
-
4
- describe('Функция is_class', () => {
5
- test('должна возвращать true для класса', () => {
6
- class MyClass {}
7
- expect(is_class(MyClass)).toBe(true);
8
- });
9
-
10
- test('должна возвращать false для функции-конструктора', () => {
11
- function MyFunction() {}
12
- expect(is_class(MyFunction)).toBe(false);
13
- });
14
-
15
- test('должна возвращать false для объектов', () => {
16
- expect(is_class({})).toBe(false);
17
- });
18
-
19
- test('должна возвращать false для массивов', () => {
20
- expect(is_class([])).toBe(false);
21
- });
22
-
23
- test('должна возвращать false для null', () => {
24
- expect(is_class(null)).toBe(false);
25
- });
26
-
27
- test('должна возвращать false для чисел', () => {
28
- expect(is_class(42)).toBe(false);
29
- });
30
-
31
- test('должна возвращать false для строк', () => {
32
- expect(is_class('hello')).toBe(false);
33
- });
34
-
35
- test('должна возвращать false для булевых значений', () => {
36
- expect(is_class(true)).toBe(false);
37
- });
38
-
39
- test('должна возвращать false для встроенных объектов, таких как Map', () => {
40
- expect(is_class(new Map())).toBe(false);
41
- });
42
-
43
- test('должна возвращать false для встроенных объектов, таких как Date', () => {
44
- expect(is_class(new Date())).toBe(false);
45
- });
46
-
47
- test('должна возвращать false для объекта, созданного через Object.create(null)', () => {
48
- const noProtoObject = Object.create(null);
49
- noProtoObject.foo = 'bar';
50
- expect(is_class(noProtoObject)).toBe(false);
51
- });
52
-
53
- test('должна возвращать false для стрелочных функций', () => {
54
- expect(is_class(() => {})).toBe(false);
55
- });
56
-
57
- test('должна возвращать false для async функций', () => {
58
- async function asyncFunc() {}
59
- expect(is_class(asyncFunc)).toBe(false);
60
- });
61
-
62
- test('должна возвращать false для генераторов', () => {
63
- function* generatorFunc() {}
64
- expect(is_class(generatorFunc)).toBe(false);
65
- });
66
-
67
- test('должна возвращать false для async генераторов', () => {
68
- async function* asyncGeneratorFunc() {}
69
- expect(is_class(asyncGeneratorFunc)).toBe(false);
70
- });
71
-
72
- test('должна возвращать false для символов', () => {
73
- expect(is_class(Symbol('symbol'))).toBe(false);
74
- });
75
-
76
- test('должна возвращать false для объектов с методом toString', () => {
77
- const obj = {
78
- toString() {
79
- return 'class';
80
- },
81
- };
82
- expect(is_class(obj)).toBe(false);
83
- });
84
- });
1
+ import { expect, test } from '@jest/globals';
2
+ import { is_class } from '../../index.mjs';
3
+
4
+ describe('Функция is_class', () => {
5
+ test('должна возвращать true для класса', () => {
6
+ class MyClass {}
7
+ expect(is_class(MyClass)).toBe(true);
8
+ });
9
+
10
+ test('должна возвращать false для функции-конструктора', () => {
11
+ function MyFunction() {}
12
+ expect(is_class(MyFunction)).toBe(false);
13
+ });
14
+
15
+ test('должна возвращать false для объектов', () => {
16
+ expect(is_class({})).toBe(false);
17
+ });
18
+
19
+ test('должна возвращать false для массивов', () => {
20
+ expect(is_class([])).toBe(false);
21
+ });
22
+
23
+ test('должна возвращать false для null', () => {
24
+ expect(is_class(null)).toBe(false);
25
+ });
26
+
27
+ test('должна возвращать false для чисел', () => {
28
+ expect(is_class(42)).toBe(false);
29
+ });
30
+
31
+ test('должна возвращать false для строк', () => {
32
+ expect(is_class('hello')).toBe(false);
33
+ });
34
+
35
+ test('должна возвращать false для булевых значений', () => {
36
+ expect(is_class(true)).toBe(false);
37
+ });
38
+
39
+ test('должна возвращать false для встроенных объектов, таких как Map', () => {
40
+ expect(is_class(new Map())).toBe(false);
41
+ });
42
+
43
+ test('должна возвращать false для встроенных объектов, таких как Date', () => {
44
+ expect(is_class(new Date())).toBe(false);
45
+ });
46
+
47
+ test('должна возвращать false для объекта, созданного через Object.create(null)', () => {
48
+ const noProtoObject = Object.create(null);
49
+ noProtoObject.foo = 'bar';
50
+ expect(is_class(noProtoObject)).toBe(false);
51
+ });
52
+
53
+ test('должна возвращать false для стрелочных функций', () => {
54
+ expect(is_class(() => {})).toBe(false);
55
+ });
56
+
57
+ test('должна возвращать false для async функций', () => {
58
+ async function asyncFunc() {}
59
+ expect(is_class(asyncFunc)).toBe(false);
60
+ });
61
+
62
+ test('должна возвращать false для генераторов', () => {
63
+ function* generatorFunc() {}
64
+ expect(is_class(generatorFunc)).toBe(false);
65
+ });
66
+
67
+ test('должна возвращать false для async генераторов', () => {
68
+ async function* asyncGeneratorFunc() {}
69
+ expect(is_class(asyncGeneratorFunc)).toBe(false);
70
+ });
71
+
72
+ test('должна возвращать false для символов', () => {
73
+ expect(is_class(Symbol('symbol'))).toBe(false);
74
+ });
75
+
76
+ test('должна возвращать false для объектов с методом toString', () => {
77
+ const obj = {
78
+ toString() {
79
+ return 'class';
80
+ },
81
+ };
82
+ expect(is_class(obj)).toBe(false);
83
+ });
84
+ });