castkit 0.1.2 → 0.3.0

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 (84) hide show
  1. checksums.yaml +4 -4
  2. data/.rspec_status +195 -219
  3. data/CHANGELOG.md +42 -0
  4. data/README.md +744 -83
  5. data/castkit.gemspec +1 -0
  6. data/lib/castkit/attribute.rb +6 -24
  7. data/lib/castkit/castkit.rb +61 -10
  8. data/lib/castkit/cli/generate.rb +98 -0
  9. data/lib/castkit/cli/list.rb +200 -0
  10. data/lib/castkit/cli/main.rb +43 -0
  11. data/lib/castkit/cli.rb +24 -0
  12. data/lib/castkit/configuration.rb +116 -46
  13. data/lib/castkit/contract/base.rb +168 -0
  14. data/lib/castkit/contract/data_object.rb +62 -0
  15. data/lib/castkit/contract/result.rb +74 -0
  16. data/lib/castkit/contract/validator.rb +248 -0
  17. data/lib/castkit/contract.rb +67 -0
  18. data/lib/castkit/{data_object_extensions → core}/attribute_types.rb +21 -7
  19. data/lib/castkit/{data_object_extensions → core}/attributes.rb +8 -3
  20. data/lib/castkit/core/config.rb +74 -0
  21. data/lib/castkit/core/registerable.rb +59 -0
  22. data/lib/castkit/data_object.rb +56 -67
  23. data/lib/castkit/error.rb +15 -3
  24. data/lib/castkit/ext/attribute/access.rb +67 -0
  25. data/lib/castkit/ext/attribute/error_handling.rb +63 -0
  26. data/lib/castkit/ext/attribute/options.rb +142 -0
  27. data/lib/castkit/ext/attribute/validation.rb +85 -0
  28. data/lib/castkit/ext/data_object/contract.rb +96 -0
  29. data/lib/castkit/ext/data_object/deserialization.rb +167 -0
  30. data/lib/castkit/ext/data_object/plugins.rb +86 -0
  31. data/lib/castkit/ext/data_object/serialization.rb +61 -0
  32. data/lib/castkit/inflector.rb +47 -0
  33. data/lib/castkit/plugins.rb +82 -0
  34. data/lib/castkit/serializers/base.rb +94 -0
  35. data/lib/castkit/serializers/default_serializer.rb +156 -0
  36. data/lib/castkit/types/base.rb +122 -0
  37. data/lib/castkit/types/boolean.rb +47 -0
  38. data/lib/castkit/types/collection.rb +35 -0
  39. data/lib/castkit/types/date.rb +34 -0
  40. data/lib/castkit/types/date_time.rb +34 -0
  41. data/lib/castkit/types/float.rb +46 -0
  42. data/lib/castkit/types/integer.rb +46 -0
  43. data/lib/castkit/types/string.rb +44 -0
  44. data/lib/castkit/types.rb +15 -0
  45. data/lib/castkit/validators/base.rb +59 -0
  46. data/lib/castkit/validators/boolean_validator.rb +39 -0
  47. data/lib/castkit/validators/collection_validator.rb +29 -0
  48. data/lib/castkit/validators/float_validator.rb +31 -0
  49. data/lib/castkit/validators/integer_validator.rb +31 -0
  50. data/lib/castkit/validators/numeric_validator.rb +2 -2
  51. data/lib/castkit/validators/string_validator.rb +3 -4
  52. data/lib/castkit/version.rb +1 -1
  53. data/lib/castkit.rb +2 -0
  54. data/lib/generators/base.rb +97 -0
  55. data/lib/generators/contract.rb +68 -0
  56. data/lib/generators/data_object.rb +48 -0
  57. data/lib/generators/plugin.rb +25 -0
  58. data/lib/generators/serializer.rb +28 -0
  59. data/lib/generators/templates/contract.rb.tt +24 -0
  60. data/lib/generators/templates/contract_spec.rb.tt +76 -0
  61. data/lib/generators/templates/data_object.rb.tt +15 -0
  62. data/lib/generators/templates/data_object_spec.rb.tt +36 -0
  63. data/lib/generators/templates/plugin.rb.tt +37 -0
  64. data/lib/generators/templates/plugin_spec.rb.tt +18 -0
  65. data/lib/generators/templates/serializer.rb.tt +24 -0
  66. data/lib/generators/templates/serializer_spec.rb.tt +14 -0
  67. data/lib/generators/templates/type.rb.tt +55 -0
  68. data/lib/generators/templates/type_spec.rb.tt +42 -0
  69. data/lib/generators/templates/validator.rb.tt +26 -0
  70. data/lib/generators/templates/validator_spec.rb.tt +23 -0
  71. data/lib/generators/type.rb +29 -0
  72. data/lib/generators/validator.rb +41 -0
  73. metadata +74 -15
  74. data/lib/castkit/attribute_extensions/access.rb +0 -65
  75. data/lib/castkit/attribute_extensions/casting.rb +0 -147
  76. data/lib/castkit/attribute_extensions/error_handling.rb +0 -83
  77. data/lib/castkit/attribute_extensions/options.rb +0 -131
  78. data/lib/castkit/attribute_extensions/serialization.rb +0 -89
  79. data/lib/castkit/attribute_extensions/validation.rb +0 -72
  80. data/lib/castkit/data_object_extensions/config.rb +0 -113
  81. data/lib/castkit/data_object_extensions/deserialization.rb +0 -110
  82. data/lib/castkit/default_serializer.rb +0 -123
  83. data/lib/castkit/serializer.rb +0 -92
  84. data/lib/castkit/validators.rb +0 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 95050d3dd1d35789f00934058e7170ca3f83488bc5fd09bc0925541b5a4064dc
4
- data.tar.gz: a5696ecf5e038e4ebc5a98a6bed7b450b79cee9f5b785dd43b284d39900bbbde
3
+ metadata.gz: d47af535f6e3f14f248ba864df4761e5ca2918f7153ec5336a932842a2329576
4
+ data.tar.gz: f7c5112a38faa006476b4758ad1b80be18323cbb5300c04cb5a39a92aa559fa8
5
5
  SHA512:
6
- metadata.gz: a645ee089081292c94ad303f758ea8f9f106543c4f0a4705124d9bcdaae9496d8d1f13205965bd356f65efd67e47cb61b750cf5621cd6d9317b54e87b1ea3c76
7
- data.tar.gz: 9c850e2e1a69817fa5ed91593057385779e241d4215474455eed201c6b8c3eada2a3855cbae9a22feb512b9682de739ee07c68b9f40da14d11a180e3f4c8e18d
6
+ metadata.gz: cfcb5f523b1c875af1685e9643dd19e144984cc528c6cfcc7914b8def979023905e17eddbefda4ba65eb2756098565af77226fc67ed427a084de60e476652f05
7
+ data.tar.gz: 3ed9aef95fd9f1634ca38544a6b3e937e4da5a88c3b99a29f93c6481e48171f9780462dbd8f41d41162a8e1b40cf657143d756c4fdcf6cc887b8d4e5dd71d02f
data/.rspec_status CHANGED
@@ -1,219 +1,195 @@
1
- example_id | status | run_time |
2
- --------------------------------------------------------------------- | ------ | --------------- |
3
- ./spec/castkit/attribute_extensions/access_spec.rb[1:1:1] | passed | 0.00053 seconds |
4
- ./spec/castkit/attribute_extensions/access_spec.rb[1:1:2:1] | passed | 0.00007 seconds |
5
- ./spec/castkit/attribute_extensions/access_spec.rb[1:1:3:1] | passed | 0.00004 seconds |
6
- ./spec/castkit/attribute_extensions/access_spec.rb[1:1:4:1] | passed | 0.00004 seconds |
7
- ./spec/castkit/attribute_extensions/access_spec.rb[1:2:1:1] | passed | 0.00122 seconds |
8
- ./spec/castkit/attribute_extensions/access_spec.rb[1:2:2:1] | passed | 0.00008 seconds |
9
- ./spec/castkit/attribute_extensions/access_spec.rb[1:2:3:1] | passed | 0.00005 seconds |
10
- ./spec/castkit/attribute_extensions/access_spec.rb[1:3:1] | passed | 0.00004 seconds |
11
- ./spec/castkit/attribute_extensions/access_spec.rb[1:3:2] | passed | 0.00004 seconds |
12
- ./spec/castkit/attribute_extensions/access_spec.rb[1:3:3] | passed | 0.00004 seconds |
13
- ./spec/castkit/attribute_extensions/access_spec.rb[1:3:4] | passed | 0.00004 seconds |
14
- ./spec/castkit/attribute_extensions/access_spec.rb[1:3:5] | passed | 0.00003 seconds |
15
- ./spec/castkit/attribute_extensions/access_spec.rb[1:4:1:1] | passed | 0.00006 seconds |
16
- ./spec/castkit/attribute_extensions/access_spec.rb[1:4:2:1] | passed | 0.00006 seconds |
17
- ./spec/castkit/attribute_extensions/access_spec.rb[1:4:3:1] | passed | 0.00012 seconds |
18
- ./spec/castkit/attribute_extensions/access_spec.rb[1:5:1] | passed | 0.00004 seconds |
19
- ./spec/castkit/attribute_extensions/access_spec.rb[1:5:2] | passed | 0.00005 seconds |
20
- ./spec/castkit/attribute_extensions/access_spec.rb[1:5:3] | passed | 0.00004 seconds |
21
- ./spec/castkit/attribute_extensions/access_spec.rb[1:6:1:1] | passed | 0.00004 seconds |
22
- ./spec/castkit/attribute_extensions/access_spec.rb[1:6:2:1] | passed | 0.00005 seconds |
23
- ./spec/castkit/attribute_extensions/access_spec.rb[1:6:3:1] | passed | 0.00004 seconds |
24
- ./spec/castkit/attribute_extensions/access_spec.rb[1:7:1:1] | passed | 0.00004 seconds |
25
- ./spec/castkit/attribute_extensions/access_spec.rb[1:7:2:1] | passed | 0.00004 seconds |
26
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:1:1] | passed | 0.00006 seconds |
27
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:2:1] | passed | 0.00421 seconds |
28
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:2:2] | passed | 0.00023 seconds |
29
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:2:3] | passed | 0.00096 seconds |
30
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:3:1] | passed | 0.00021 seconds |
31
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:4:1] | passed | 0.0001 seconds |
32
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:5:1] | passed | 0.00006 seconds |
33
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:6:1] | passed | 0.00015 seconds |
34
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:7:1] | passed | 0.00005 seconds |
35
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:8:1] | passed | 0.00005 seconds |
36
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:9:1] | passed | 0.00004 seconds |
37
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:10:1] | passed | 0.00005 seconds |
38
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:10:2] | passed | 0.00004 seconds |
39
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:10:3] | passed | 0.00007 seconds |
40
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:11:1] | passed | 0.00015 seconds |
41
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:12:1] | passed | 0.00065 seconds |
42
- ./spec/castkit/attribute_extensions/casting_spec.rb[1:1:13:1] | passed | 0.00012 seconds |
43
- ./spec/castkit/attribute_extensions/options_spec.rb[1:1:1:1] | passed | 0.00008 seconds |
44
- ./spec/castkit/attribute_extensions/options_spec.rb[1:1:2:1] | passed | 0.00179 seconds |
45
- ./spec/castkit/attribute_extensions/options_spec.rb[1:2:1:1] | passed | 0.00006 seconds |
46
- ./spec/castkit/attribute_extensions/options_spec.rb[1:2:2:1] | passed | 0.00005 seconds |
47
- ./spec/castkit/attribute_extensions/options_spec.rb[1:3:1:1] | passed | 0.00005 seconds |
48
- ./spec/castkit/attribute_extensions/options_spec.rb[1:3:2:1] | passed | 0.00005 seconds |
49
- ./spec/castkit/attribute_extensions/options_spec.rb[1:3:3:1] | passed | 0.00004 seconds |
50
- ./spec/castkit/attribute_extensions/options_spec.rb[1:4:1] | passed | 0.00005 seconds |
51
- ./spec/castkit/attribute_extensions/options_spec.rb[1:5:1] | passed | 0.00004 seconds |
52
- ./spec/castkit/attribute_extensions/options_spec.rb[1:5:2:1] | passed | 0.00004 seconds |
53
- ./spec/castkit/attribute_extensions/options_spec.rb[1:6:1] | passed | 0.00006 seconds |
54
- ./spec/castkit/attribute_extensions/options_spec.rb[1:7:1] | passed | 0.00004 seconds |
55
- ./spec/castkit/attribute_extensions/options_spec.rb[1:7:2:1] | passed | 0.00005 seconds |
56
- ./spec/castkit/attribute_extensions/options_spec.rb[1:8:1] | passed | 0.00009 seconds |
57
- ./spec/castkit/attribute_extensions/options_spec.rb[1:8:2:1] | passed | 0.00004 seconds |
58
- ./spec/castkit/attribute_extensions/options_spec.rb[1:9:1:1] | passed | 0.00005 seconds |
59
- ./spec/castkit/attribute_extensions/options_spec.rb[1:9:2:1] | passed | 0.00005 seconds |
60
- ./spec/castkit/attribute_extensions/options_spec.rb[1:9:3:1] | passed | 0.00004 seconds |
61
- ./spec/castkit/attribute_extensions/options_spec.rb[1:10:1:1] | passed | 0.00005 seconds |
62
- ./spec/castkit/attribute_extensions/options_spec.rb[1:10:2:1] | passed | 0.00004 seconds |
63
- ./spec/castkit/attribute_extensions/options_spec.rb[1:11:1:1] | passed | 0.00004 seconds |
64
- ./spec/castkit/attribute_extensions/options_spec.rb[1:11:2:1] | passed | 0.00004 seconds |
65
- ./spec/castkit/attribute_extensions/options_spec.rb[1:12:1:1] | passed | 0.00004 seconds |
66
- ./spec/castkit/attribute_extensions/options_spec.rb[1:12:2:1] | passed | 0.00004 seconds |
67
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:1:1:1] | passed | 0.00006 seconds |
68
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:1:2:1] | passed | 0.00011 seconds |
69
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:1:3:1] | passed | 0.00005 seconds |
70
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:2:1] | passed | 0.00004 seconds |
71
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:2:2] | passed | 0.00017 seconds |
72
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:2:3] | passed | 0.00011 seconds |
73
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:3:1] | passed | 0.00004 seconds |
74
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:3:2] | passed | 0.00004 seconds |
75
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:3:3] | passed | 0.00013 seconds |
76
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:3:4] | passed | 0.00004 seconds |
77
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:4:1] | passed | 0.00061 seconds |
78
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:4:2] | passed | 0.00005 seconds |
79
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:5:1] | passed | 0.00005 seconds |
80
- ./spec/castkit/attribute_extensions/serialization_spec.rb[1:5:2] | passed | 0.00004 seconds |
81
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:1:1] | passed | 0.00014 seconds |
82
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:2:1:1] | passed | 0.0001 seconds |
83
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:2:2:1] | passed | 0.00016 seconds |
84
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:3:1] | passed | 0.00008 seconds |
85
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:4:1:1] | passed | 0.00009 seconds |
86
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:4:2:1] | passed | 0.00012 seconds |
87
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:5:1:1] | passed | 0.00008 seconds |
88
- ./spec/castkit/attribute_extensions/validation_spec.rb[1:1:5:2:1] | passed | 0.00011 seconds |
89
- ./spec/castkit/attribute_spec.rb[1:1:1] | passed | 0.00005 seconds |
90
- ./spec/castkit/attribute_spec.rb[1:1:2] | passed | 0.00003 seconds |
91
- ./spec/castkit/attribute_spec.rb[1:1:3] | passed | 0.00003 seconds |
92
- ./spec/castkit/attribute_spec.rb[1:1:4] | passed | 0.00003 seconds |
93
- ./spec/castkit/attribute_spec.rb[1:2:1] | passed | 0.00127 seconds |
94
- ./spec/castkit/attribute_spec.rb[1:3:1:1] | passed | 0.00008 seconds |
95
- ./spec/castkit/attribute_spec.rb[1:3:2:1] | passed | 0.00005 seconds |
96
- ./spec/castkit/attribute_spec.rb[1:3:3:1] | passed | 0.00007 seconds |
97
- ./spec/castkit/attribute_spec.rb[1:4:1] | passed | 0.00008 seconds |
98
- ./spec/castkit/attribute_spec.rb[1:4:2] | passed | 0.00006 seconds |
99
- ./spec/castkit/attribute_spec.rb[1:4:3] | passed | 0.00003 seconds |
100
- ./spec/castkit/attribute_spec.rb[1:4:4] | passed | 0.00006 seconds |
101
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:1] | passed | 0.00006 seconds |
102
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:2] | passed | 0.00004 seconds |
103
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:3] | passed | 0.00003 seconds |
104
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:4] | passed | 0.00003 seconds |
105
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:5] | passed | 0.00004 seconds |
106
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:6] | passed | 0.00003 seconds |
107
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:7] | passed | 0.00003 seconds |
108
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:8] | passed | 0.00003 seconds |
109
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:9] | passed | 0.00003 seconds |
110
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:10] | passed | 0.00005 seconds |
111
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:11] | passed | 0.00004 seconds |
112
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:12] | passed | 0.00003 seconds |
113
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:13] | passed | 0.00003 seconds |
114
- ./spec/castkit/data_object_extensions/attribute_types_spec.rb[1:1:14] | passed | 0.00003 seconds |
115
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:1:1] | passed | 0.00008 seconds |
116
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:1:2] | passed | 0.00006 seconds |
117
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:1:3] | passed | 0.00006 seconds |
118
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:2:1] | passed | 0.00004 seconds |
119
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:3:1] | passed | 0.00006 seconds |
120
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:4:1] | passed | 0.00102 seconds |
121
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:5:1] | passed | 0.0001 seconds |
122
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:6:1] | passed | 0.00007 seconds |
123
- ./spec/castkit/data_object_extensions/attributes_spec.rb[1:7:1] | passed | 0.00005 seconds |
124
- ./spec/castkit/data_object_extensions/config_spec.rb[1:1:1] | passed | 0.00006 seconds |
125
- ./spec/castkit/data_object_extensions/config_spec.rb[1:1:2] | passed | 0.00004 seconds |
126
- ./spec/castkit/data_object_extensions/config_spec.rb[1:2:1] | passed | 0.00004 seconds |
127
- ./spec/castkit/data_object_extensions/config_spec.rb[1:2:2] | passed | 0.00004 seconds |
128
- ./spec/castkit/data_object_extensions/config_spec.rb[1:3:1] | passed | 0.00003 seconds |
129
- ./spec/castkit/data_object_extensions/config_spec.rb[1:3:2] | passed | 0.00004 seconds |
130
- ./spec/castkit/data_object_extensions/config_spec.rb[1:4:1] | passed | 0.00004 seconds |
131
- ./spec/castkit/data_object_extensions/config_spec.rb[1:5:1] | passed | 0.00003 seconds |
132
- ./spec/castkit/data_object_extensions/config_spec.rb[1:5:2] | passed | 0.00003 seconds |
133
- ./spec/castkit/data_object_extensions/config_spec.rb[1:6:1] | passed | 0.00004 seconds |
134
- ./spec/castkit/data_object_extensions/config_spec.rb[1:6:2] | passed | 0.00004 seconds |
135
- ./spec/castkit/data_object_extensions/config_spec.rb[1:7:1] | passed | 0.00004 seconds |
136
- ./spec/castkit/data_object_extensions/config_spec.rb[1:7:2] | passed | 0.00004 seconds |
137
- ./spec/castkit/data_object_extensions/config_spec.rb[1:8:1] | passed | 0.00004 seconds |
138
- ./spec/castkit/data_object_extensions/config_spec.rb[1:9:1] | passed | 0.00004 seconds |
139
- ./spec/castkit/data_object_extensions/config_spec.rb[1:9:2] | passed | 0.00004 seconds |
140
- ./spec/castkit/data_object_extensions/deserialization_spec.rb[1:1:1] | passed | 0.00013 seconds |
141
- ./spec/castkit/data_object_extensions/deserialization_spec.rb[1:2:1] | passed | 0.00006 seconds |
142
- ./spec/castkit/data_object_extensions/deserialization_spec.rb[1:2:2] | passed | 0.00006 seconds |
143
- ./spec/castkit/data_object_extensions/deserialization_spec.rb[1:3:1] | passed | 0.00026 seconds |
144
- ./spec/castkit/data_object_extensions/deserialization_spec.rb[1:4:1] | passed | 0.00097 seconds |
145
- ./spec/castkit/data_object_spec.rb[1:1:1] | passed | 0.00014 seconds |
146
- ./spec/castkit/data_object_spec.rb[1:1:2] | passed | 0.00009 seconds |
147
- ./spec/castkit/data_object_spec.rb[1:1:3] | passed | 0.00008 seconds |
148
- ./spec/castkit/data_object_spec.rb[1:2:1] | passed | 0.0001 seconds |
149
- ./spec/castkit/data_object_spec.rb[1:2:2] | passed | 0.0001 seconds |
150
- ./spec/castkit/data_object_spec.rb[1:3:1] | passed | 0.00012 seconds |
151
- ./spec/castkit/data_object_spec.rb[1:4:1] | passed | 0.00008 seconds |
152
- ./spec/castkit/data_object_spec.rb[1:4:2] | passed | 0.00008 seconds |
153
- ./spec/castkit/data_object_spec.rb[1:4:3] | passed | 0.00016 seconds |
154
- ./spec/castkit/data_object_spec.rb[1:4:4] | passed | 0.00008 seconds |
155
- ./spec/castkit/data_object_spec.rb[1:4:5] | passed | 0.00077 seconds |
156
- ./spec/castkit/data_object_spec.rb[1:4:6] | passed | 0.00025 seconds |
157
- ./spec/castkit/data_object_spec.rb[1:4:7] | passed | 0.00012 seconds |
158
- ./spec/castkit/data_object_spec.rb[1:5:1] | passed | 0.00008 seconds |
159
- ./spec/castkit/data_object_spec.rb[1:6:1] | passed | 0.0001 seconds |
160
- ./spec/castkit/data_object_spec.rb[1:7:1] | passed | 0.00011 seconds |
161
- ./spec/castkit/data_object_spec.rb[1:7:2] | passed | 0.00016 seconds |
162
- ./spec/castkit/data_object_spec.rb[1:8:1] | passed | 0.00011 seconds |
163
- ./spec/castkit/default_serializer_spec.rb[1:1:1] | passed | 0.0001 seconds |
164
- ./spec/castkit/default_serializer_spec.rb[1:2:1] | passed | 0.00013 seconds |
165
- ./spec/castkit/default_serializer_spec.rb[1:2:2] | passed | 0.00014 seconds |
166
- ./spec/castkit/default_serializer_spec.rb[1:2:3] | passed | 0.00015 seconds |
167
- ./spec/castkit/default_serializer_spec.rb[1:3:1] | passed | 0.00008 seconds |
168
- ./spec/castkit/default_serializer_spec.rb[1:3:2] | passed | 0.00014 seconds |
169
- ./spec/castkit/default_serializer_spec.rb[1:3:3] | passed | 0.00015 seconds |
170
- ./spec/castkit/default_serializer_spec.rb[1:3:4] | passed | 0.00018 seconds |
171
- ./spec/castkit/default_serializer_spec.rb[1:4:1] | passed | 0.00008 seconds |
172
- ./spec/castkit/default_serializer_spec.rb[1:5:1] | passed | 0.00007 seconds |
173
- ./spec/castkit/default_serializer_spec.rb[1:5:2] | passed | 0.00007 seconds |
174
- ./spec/castkit/default_serializer_spec.rb[1:5:3] | passed | 0.00006 seconds |
175
- ./spec/castkit/serializer_spec.rb[1:1:1] | passed | 0.00004 seconds |
176
- ./spec/castkit/serializer_spec.rb[1:2:1] | passed | 0.00014 seconds |
177
- ./spec/castkit/serializer_spec.rb[1:3:1] | passed | 0.00007 seconds |
178
- ./spec/castkit/serializer_spec.rb[1:3:2] | passed | 0.00011 seconds |
179
- ./spec/castkit/serializer_spec.rb[1:4:1] | passed | 0.00004 seconds |
180
- ./spec/castkit/validator_spec.rb[1:1:1] | passed | 0.00003 seconds |
181
- ./spec/castkit/validator_spec.rb[1:2:1] | passed | 0.00004 seconds |
182
- ./spec/castkit/validators/numeric_validator_spec.rb[1:1:1:1] | passed | 0.00005 seconds |
183
- ./spec/castkit/validators/numeric_validator_spec.rb[1:1:2:1] | passed | 0.00004 seconds |
184
- ./spec/castkit/validators/numeric_validator_spec.rb[1:1:3:1] | passed | 0.00004 seconds |
185
- ./spec/castkit/validators/numeric_validator_spec.rb[1:1:4:1] | passed | 0.00003 seconds |
186
- ./spec/castkit/validators/string_validator_spec.rb[1:1:1:1:1] | passed | 0.00004 seconds |
187
- ./spec/castkit/validators/string_validator_spec.rb[1:1:1:1:2] | passed | 0.00004 seconds |
188
- ./spec/castkit/validators/string_validator_spec.rb[1:1:2:1] | passed | 0.00004 seconds |
189
- ./spec/castkit/validators/string_validator_spec.rb[1:1:2:2] | passed | 0.00003 seconds |
190
- ./spec/castkit/validators/string_validator_spec.rb[1:1:3:1] | passed | 0.00005 seconds |
191
- ./spec/castkit/validators/string_validator_spec.rb[1:1:3:2] | passed | 0.00011 seconds |
192
- ./spec/castkit/validators/string_validator_spec.rb[1:1:4:1] | passed | 0.00008 seconds |
193
- ./spec/castkit_spec.rb[1:1] | passed | 0.00004 seconds |
194
- ./spec/castkit_spec.rb[1:2:1:1] | passed | 0.00012 seconds |
195
- ./spec/castkit_spec.rb[1:2:1:2] | passed | 0.00007 seconds |
196
- ./spec/castkit_spec.rb[1:2:1:3] | passed | 0.00009 seconds |
197
- ./spec/castkit_spec.rb[1:2:1:4] | passed | 0.00008 seconds |
198
- ./spec/castkit_spec.rb[1:2:2:1] | passed | 0.00008 seconds |
199
- ./spec/castkit_spec.rb[1:2:2:2] | passed | 0.00005 seconds |
200
- ./spec/castkit_spec.rb[1:2:2:3] | passed | 0.00012 seconds |
201
- ./spec/castkit_spec.rb[1:2:3:1] | passed | 0.00005 seconds |
202
- ./spec/castkit_spec.rb[1:2:3:2] | passed | 0.00006 seconds |
203
- ./spec/castkit_spec.rb[1:2:3:3] | passed | 0.00005 seconds |
204
- ./spec/castkit_spec.rb[1:2:4:1] | passed | 0.00006 seconds |
205
- ./spec/castkit_spec.rb[1:3:1] | passed | 0.00015 seconds |
206
- ./spec/castkit_spec.rb[1:3:2] | passed | 0.00018 seconds |
207
- ./spec/castkit_spec.rb[1:3:3] | passed | 0.00015 seconds |
208
- ./spec/castkit_spec.rb[1:3:4] | passed | 0.00017 seconds |
209
- ./spec/castkit_spec.rb[1:3:5] | passed | 0.00009 seconds |
210
- ./spec/castkit_spec.rb[1:3:6] | passed | 0.0001 seconds |
211
- ./spec/castkit_spec.rb[1:3:7] | passed | 0.00017 seconds |
212
- ./spec/castkit_spec.rb[1:3:8] | passed | 0.00018 seconds |
213
- ./spec/configuration_spec.rb[1:1:1] | passed | 0.00006 seconds |
214
- ./spec/configuration_spec.rb[1:2:1] | passed | 0.00004 seconds |
215
- ./spec/configuration_spec.rb[1:3:1] | passed | 0.00004 seconds |
216
- ./spec/configuration_spec.rb[1:3:2] | passed | 0.00003 seconds |
217
- ./spec/configuration_spec.rb[1:3:3] | passed | 0.00003 seconds |
218
- ./spec/configuration_spec.rb[1:3:4] | passed | 0.00005 seconds |
219
- ./spec/configuration_spec.rb[1:4:1] | passed | 0.00004 seconds |
1
+ example_id | status | run_time |
2
+ ------------------------------------------------------------- | ------ | --------------- |
3
+ ./spec/castkit/attribute_spec.rb[1:1:1] | passed | 0.00045 seconds |
4
+ ./spec/castkit/attribute_spec.rb[1:1:2] | passed | 0.00004 seconds |
5
+ ./spec/castkit/attribute_spec.rb[1:1:3] | passed | 0.00004 seconds |
6
+ ./spec/castkit/attribute_spec.rb[1:1:4] | passed | 0.00003 seconds |
7
+ ./spec/castkit/attribute_spec.rb[1:2:1] | passed | 0.00096 seconds |
8
+ ./spec/castkit/attribute_spec.rb[1:3:1] | passed | 0.00004 seconds |
9
+ ./spec/castkit/attribute_spec.rb[1:3:2] | passed | 0.00004 seconds |
10
+ ./spec/castkit/attribute_spec.rb[1:3:3] | passed | 0.00003 seconds |
11
+ ./spec/castkit/attribute_spec.rb[1:3:4] | passed | 0.00079 seconds |
12
+ ./spec/castkit/base_spec.rb[1:1:1] | passed | 0.00007 seconds |
13
+ ./spec/castkit/base_spec.rb[1:2:1] | passed | 0.00365 seconds |
14
+ ./spec/castkit/base_spec.rb[1:3:1] | passed | 0.00009 seconds |
15
+ ./spec/castkit/base_spec.rb[1:3:2] | passed | 0.00006 seconds |
16
+ ./spec/castkit/base_spec.rb[1:4:1] | passed | 0.00005 seconds |
17
+ ./spec/castkit/contract/validator_spec.rb[1:1:1:1] | passed | 0.00008 seconds |
18
+ ./spec/castkit/contract/validator_spec.rb[1:1:2:1] | passed | 0.00038 seconds |
19
+ ./spec/castkit/contract/validator_spec.rb[1:1:3:1] | passed | 0.00007 seconds |
20
+ ./spec/castkit/contract/validator_spec.rb[1:1:4:1] | passed | 0.00009 seconds |
21
+ ./spec/castkit/contract/validator_spec.rb[1:1:5:1] | passed | 0.00008 seconds |
22
+ ./spec/castkit/contract_spec.rb[1:1:1] | passed | 0.0003 seconds |
23
+ ./spec/castkit/contract_spec.rb[1:1:2] | passed | 0.001 seconds |
24
+ ./spec/castkit/contract_spec.rb[1:1:3] | passed | 0.00008 seconds |
25
+ ./spec/castkit/contract_spec.rb[1:1:4] | passed | 0.00006 seconds |
26
+ ./spec/castkit/contract_spec.rb[1:1:5] | passed | 0.00006 seconds |
27
+ ./spec/castkit/contract_spec.rb[1:1:6] | passed | 0.00006 seconds |
28
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:1] | passed | 0.00005 seconds |
29
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:2] | passed | 0.00003 seconds |
30
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:3] | passed | 0.00003 seconds |
31
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:4] | passed | 0.00003 seconds |
32
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:5] | passed | 0.00003 seconds |
33
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:6] | passed | 0.00003 seconds |
34
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:7] | passed | 0.00003 seconds |
35
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:8] | passed | 0.00006 seconds |
36
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:9] | passed | 0.00004 seconds |
37
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:10] | passed | 0.00005 seconds |
38
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:11] | passed | 0.00003 seconds |
39
+ ./spec/castkit/core/attribute_types_spec.rb[1:1:12] | passed | 0.00003 seconds |
40
+ ./spec/castkit/core/attributes_spec.rb[1:1:1] | passed | 0.00005 seconds |
41
+ ./spec/castkit/core/attributes_spec.rb[1:1:2] | passed | 0.00005 seconds |
42
+ ./spec/castkit/core/attributes_spec.rb[1:1:3] | passed | 0.00005 seconds |
43
+ ./spec/castkit/core/attributes_spec.rb[1:2:1] | passed | 0.00004 seconds |
44
+ ./spec/castkit/core/attributes_spec.rb[1:3:1] | passed | 0.00005 seconds |
45
+ ./spec/castkit/core/attributes_spec.rb[1:4:1] | passed | 0.00056 seconds |
46
+ ./spec/castkit/core/attributes_spec.rb[1:5:1] | passed | 0.00005 seconds |
47
+ ./spec/castkit/core/attributes_spec.rb[1:6:1] | passed | 0.00028 seconds |
48
+ ./spec/castkit/core/attributes_spec.rb[1:7:1] | passed | 0.00005 seconds |
49
+ ./spec/castkit/core/config_spec.rb[1:1:1] | passed | 0.00003 seconds |
50
+ ./spec/castkit/core/config_spec.rb[1:1:2] | passed | 0.00003 seconds |
51
+ ./spec/castkit/core/config_spec.rb[1:2:1] | passed | 0.00003 seconds |
52
+ ./spec/castkit/core/config_spec.rb[1:3:1] | passed | 0.00003 seconds |
53
+ ./spec/castkit/core/config_spec.rb[1:3:2] | passed | 0.00003 seconds |
54
+ ./spec/castkit/core/config_spec.rb[1:4:1] | passed | 0.00003 seconds |
55
+ ./spec/castkit/core/config_spec.rb[1:4:2] | passed | 0.00003 seconds |
56
+ ./spec/castkit/core/config_spec.rb[1:5:1] | passed | 0.00004 seconds |
57
+ ./spec/castkit/core/config_spec.rb[1:5:2] | passed | 0.00003 seconds |
58
+ ./spec/castkit/data_object_spec.rb[1:1:1] | passed | 0.00094 seconds |
59
+ ./spec/castkit/data_object_spec.rb[1:1:2] | passed | 0.00022 seconds |
60
+ ./spec/castkit/data_object_spec.rb[1:2:1] | passed | 0.00014 seconds |
61
+ ./spec/castkit/data_object_spec.rb[1:2:2] | passed | 0.00174 seconds |
62
+ ./spec/castkit/data_object_spec.rb[1:2:3] | passed | 0.0001 seconds |
63
+ ./spec/castkit/data_object_spec.rb[1:3:1] | passed | 0.00008 seconds |
64
+ ./spec/castkit/data_object_spec.rb[1:3:2] | passed | 0.00008 seconds |
65
+ ./spec/castkit/data_object_spec.rb[1:4:1] | passed | 0.00021 seconds |
66
+ ./spec/castkit/data_object_spec.rb[1:5:1] | passed | 0.00013 seconds |
67
+ ./spec/castkit/data_object_spec.rb[1:5:2] | passed | 0.0001 seconds |
68
+ ./spec/castkit/data_object_spec.rb[1:5:3] | passed | 0.00012 seconds |
69
+ ./spec/castkit/data_object_spec.rb[1:5:4] | passed | 0.0001 seconds |
70
+ ./spec/castkit/data_object_spec.rb[1:5:5] | passed | 0.00073 seconds |
71
+ ./spec/castkit/data_object_spec.rb[1:5:6] | passed | 0.00015 seconds |
72
+ ./spec/castkit/data_object_spec.rb[1:5:7] | passed | 0.00011 seconds |
73
+ ./spec/castkit/data_object_spec.rb[1:6:1] | passed | 0.0001 seconds |
74
+ ./spec/castkit/data_object_spec.rb[1:7:1] | passed | 0.0001 seconds |
75
+ ./spec/castkit/data_object_spec.rb[1:8:1] | passed | 0.00021 seconds |
76
+ ./spec/castkit/data_object_spec.rb[1:8:2] | passed | 0.00011 seconds |
77
+ ./spec/castkit/data_object_spec.rb[1:9:1] | passed | 0.00011 seconds |
78
+ ./spec/castkit/default_serializer_spec.rb[1:1:1] | passed | 0.00011 seconds |
79
+ ./spec/castkit/default_serializer_spec.rb[1:2:1] | passed | 0.00023 seconds |
80
+ ./spec/castkit/default_serializer_spec.rb[1:2:2] | passed | 0.00008 seconds |
81
+ ./spec/castkit/default_serializer_spec.rb[1:2:3] | passed | 0.00016 seconds |
82
+ ./spec/castkit/default_serializer_spec.rb[1:3:1] | passed | 0.00019 seconds |
83
+ ./spec/castkit/default_serializer_spec.rb[1:3:2] | passed | 0.00027 seconds |
84
+ ./spec/castkit/default_serializer_spec.rb[1:3:3] | passed | 0.00016 seconds |
85
+ ./spec/castkit/default_serializer_spec.rb[1:3:4] | passed | 0.00012 seconds |
86
+ ./spec/castkit/default_serializer_spec.rb[1:4:1] | passed | 0.00008 seconds |
87
+ ./spec/castkit/default_serializer_spec.rb[1:5:1] | passed | 0.00007 seconds |
88
+ ./spec/castkit/default_serializer_spec.rb[1:5:2] | passed | 0.00006 seconds |
89
+ ./spec/castkit/default_serializer_spec.rb[1:5:3] | passed | 0.00006 seconds |
90
+ ./spec/castkit/ext/attribute/access_spec.rb[1:1:1] | passed | 0.00004 seconds |
91
+ ./spec/castkit/ext/attribute/access_spec.rb[1:1:2:1] | passed | 0.00011 seconds |
92
+ ./spec/castkit/ext/attribute/access_spec.rb[1:1:3:1] | passed | 0.00003 seconds |
93
+ ./spec/castkit/ext/attribute/access_spec.rb[1:1:4:1] | passed | 0.00003 seconds |
94
+ ./spec/castkit/ext/attribute/access_spec.rb[1:2:1:1] | passed | 0.00004 seconds |
95
+ ./spec/castkit/ext/attribute/access_spec.rb[1:2:2:1] | passed | 0.00004 seconds |
96
+ ./spec/castkit/ext/attribute/access_spec.rb[1:2:3:1] | passed | 0.00004 seconds |
97
+ ./spec/castkit/ext/attribute/access_spec.rb[1:3:1] | passed | 0.00003 seconds |
98
+ ./spec/castkit/ext/attribute/access_spec.rb[1:3:2] | passed | 0.00009 seconds |
99
+ ./spec/castkit/ext/attribute/access_spec.rb[1:3:3] | passed | 0.00004 seconds |
100
+ ./spec/castkit/ext/attribute/access_spec.rb[1:3:4] | passed | 0.00003 seconds |
101
+ ./spec/castkit/ext/attribute/access_spec.rb[1:3:5] | passed | 0.00003 seconds |
102
+ ./spec/castkit/ext/attribute/access_spec.rb[1:4:1:1] | passed | 0.00005 seconds |
103
+ ./spec/castkit/ext/attribute/access_spec.rb[1:4:2:1] | passed | 0.00004 seconds |
104
+ ./spec/castkit/ext/attribute/access_spec.rb[1:4:3:1] | passed | 0.00004 seconds |
105
+ ./spec/castkit/ext/attribute/access_spec.rb[1:5:1] | passed | 0.00004 seconds |
106
+ ./spec/castkit/ext/attribute/access_spec.rb[1:5:2] | passed | 0.00003 seconds |
107
+ ./spec/castkit/ext/attribute/access_spec.rb[1:5:3] | passed | 0.00003 seconds |
108
+ ./spec/castkit/ext/attribute/access_spec.rb[1:6:1:1] | passed | 0.00003 seconds |
109
+ ./spec/castkit/ext/attribute/access_spec.rb[1:6:2:1] | passed | 0.00003 seconds |
110
+ ./spec/castkit/ext/attribute/access_spec.rb[1:6:3:1] | passed | 0.00003 seconds |
111
+ ./spec/castkit/ext/attribute/access_spec.rb[1:7:1:1] | passed | 0.00003 seconds |
112
+ ./spec/castkit/ext/attribute/access_spec.rb[1:7:2:1] | passed | 0.00003 seconds |
113
+ ./spec/castkit/ext/attribute/options_spec.rb[1:1:1:1] | passed | 0.00005 seconds |
114
+ ./spec/castkit/ext/attribute/options_spec.rb[1:1:2:1] | passed | 0.00004 seconds |
115
+ ./spec/castkit/ext/attribute/options_spec.rb[1:2:1:1] | passed | 0.00004 seconds |
116
+ ./spec/castkit/ext/attribute/options_spec.rb[1:2:2:1] | passed | 0.00011 seconds |
117
+ ./spec/castkit/ext/attribute/options_spec.rb[1:3:1:1] | passed | 0.00004 seconds |
118
+ ./spec/castkit/ext/attribute/options_spec.rb[1:3:2:1] | passed | 0.00004 seconds |
119
+ ./spec/castkit/ext/attribute/options_spec.rb[1:3:3:1] | passed | 0.00004 seconds |
120
+ ./spec/castkit/ext/attribute/options_spec.rb[1:4:1] | passed | 0.00004 seconds |
121
+ ./spec/castkit/ext/attribute/options_spec.rb[1:5:1] | passed | 0.00003 seconds |
122
+ ./spec/castkit/ext/attribute/options_spec.rb[1:5:2:1] | passed | 0.00004 seconds |
123
+ ./spec/castkit/ext/attribute/options_spec.rb[1:6:1] | passed | 0.00009 seconds |
124
+ ./spec/castkit/ext/attribute/options_spec.rb[1:7:1] | passed | 0.00004 seconds |
125
+ ./spec/castkit/ext/attribute/options_spec.rb[1:7:2:1] | passed | 0.00004 seconds |
126
+ ./spec/castkit/ext/attribute/options_spec.rb[1:8:1] | passed | 0.00003 seconds |
127
+ ./spec/castkit/ext/attribute/options_spec.rb[1:8:2:1] | passed | 0.00004 seconds |
128
+ ./spec/castkit/ext/attribute/options_spec.rb[1:9:1:1] | passed | 0.00006 seconds |
129
+ ./spec/castkit/ext/attribute/options_spec.rb[1:9:2:1] | passed | 0.00004 seconds |
130
+ ./spec/castkit/ext/attribute/options_spec.rb[1:9:3:1] | passed | 0.00004 seconds |
131
+ ./spec/castkit/ext/attribute/options_spec.rb[1:10:1:1] | passed | 0.00004 seconds |
132
+ ./spec/castkit/ext/attribute/options_spec.rb[1:10:2:1] | passed | 0.00004 seconds |
133
+ ./spec/castkit/ext/attribute/options_spec.rb[1:11:1:1] | passed | 0.00004 seconds |
134
+ ./spec/castkit/ext/attribute/options_spec.rb[1:11:2:1] | passed | 0.00004 seconds |
135
+ ./spec/castkit/ext/attribute/options_spec.rb[1:12:1:1] | passed | 0.00004 seconds |
136
+ ./spec/castkit/ext/attribute/options_spec.rb[1:12:2:1] | passed | 0.00004 seconds |
137
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:1:1] | passed | 0.00012 seconds |
138
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:2:1:1] | passed | 0.00017 seconds |
139
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:2:2:1] | passed | 0.00014 seconds |
140
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:3:1] | passed | 0.00007 seconds |
141
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:4:1:1] | passed | 0.00008 seconds |
142
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:4:2:1] | passed | 0.00018 seconds |
143
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:5:1:1] | passed | 0.00008 seconds |
144
+ ./spec/castkit/ext/attribute/validation_spec.rb[1:1:5:2:1] | passed | 0.00011 seconds |
145
+ ./spec/castkit/ext/data_object/deserialization_spec.rb[1:1:1] | passed | 0.00015 seconds |
146
+ ./spec/castkit/ext/data_object/deserialization_spec.rb[1:2:1] | passed | 0.00006 seconds |
147
+ ./spec/castkit/ext/data_object/deserialization_spec.rb[1:2:2] | passed | 0.00005 seconds |
148
+ ./spec/castkit/ext/data_object/deserialization_spec.rb[1:3:1] | passed | 0.00014 seconds |
149
+ ./spec/castkit/ext/data_object/deserialization_spec.rb[1:4:1] | passed | 0.00006 seconds |
150
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:1:1] | passed | 0.00003 seconds |
151
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:1:2] | passed | 0.00003 seconds |
152
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:2:1] | passed | 0.00003 seconds |
153
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:2:2] | passed | 0.00003 seconds |
154
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:3:1] | passed | 0.00004 seconds |
155
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:4:1] | passed | 0.00004 seconds |
156
+ ./spec/castkit/ext/data_object/serialization_spec.rb[1:4:2] | passed | 0.00003 seconds |
157
+ ./spec/castkit/validators/numeric_validator_spec.rb[1:1:1:1] | passed | 0.00004 seconds |
158
+ ./spec/castkit/validators/numeric_validator_spec.rb[1:1:2:1] | passed | 0.00004 seconds |
159
+ ./spec/castkit/validators/numeric_validator_spec.rb[1:1:3:1] | passed | 0.00003 seconds |
160
+ ./spec/castkit/validators/numeric_validator_spec.rb[1:1:4:1] | passed | 0.00003 seconds |
161
+ ./spec/castkit/validators/string_validator_spec.rb[1:1:1:1:1] | passed | 0.00003 seconds |
162
+ ./spec/castkit/validators/string_validator_spec.rb[1:1:2:1] | passed | 0.00004 seconds |
163
+ ./spec/castkit/validators/string_validator_spec.rb[1:1:2:2] | passed | 0.00027 seconds |
164
+ ./spec/castkit/validators/string_validator_spec.rb[1:1:3:1] | passed | 0.00007 seconds |
165
+ ./spec/castkit/validators/string_validator_spec.rb[1:1:3:2] | passed | 0.00004 seconds |
166
+ ./spec/castkit/validators/string_validator_spec.rb[1:1:4:1] | passed | 0.00006 seconds |
167
+ ./spec/castkit/validators/validator_spec.rb[1:1:1] | passed | 0.00004 seconds |
168
+ ./spec/castkit/validators/validator_spec.rb[1:2:1] | passed | 0.00004 seconds |
169
+ ./spec/castkit_spec.rb[1:1] | passed | 0.00003 seconds |
170
+ ./spec/castkit_spec.rb[1:2:1:1] | passed | 0.00015 seconds |
171
+ ./spec/castkit_spec.rb[1:2:1:2] | passed | 0.00008 seconds |
172
+ ./spec/castkit_spec.rb[1:2:1:3] | passed | 0.00012 seconds |
173
+ ./spec/castkit_spec.rb[1:2:1:4] | passed | 0.00017 seconds |
174
+ ./spec/castkit_spec.rb[1:2:2:1] | passed | 0.00013 seconds |
175
+ ./spec/castkit_spec.rb[1:2:2:2] | passed | 0.00009 seconds |
176
+ ./spec/castkit_spec.rb[1:2:2:3] | passed | 0.00007 seconds |
177
+ ./spec/castkit_spec.rb[1:2:3:1] | passed | 0.0001 seconds |
178
+ ./spec/castkit_spec.rb[1:2:3:2] | passed | 0.00007 seconds |
179
+ ./spec/castkit_spec.rb[1:2:3:3] | passed | 0.00005 seconds |
180
+ ./spec/castkit_spec.rb[1:2:4:1] | passed | 0.00372 seconds |
181
+ ./spec/castkit_spec.rb[1:3:1] | passed | 0.00324 seconds |
182
+ ./spec/castkit_spec.rb[1:3:2] | passed | 0.00333 seconds |
183
+ ./spec/castkit_spec.rb[1:3:3] | passed | 0.00022 seconds |
184
+ ./spec/castkit_spec.rb[1:3:4] | passed | 0.00022 seconds |
185
+ ./spec/castkit_spec.rb[1:3:5] | passed | 0.00013 seconds |
186
+ ./spec/castkit_spec.rb[1:3:6] | passed | 0.00017 seconds |
187
+ ./spec/castkit_spec.rb[1:3:7] | passed | 0.00023 seconds |
188
+ ./spec/castkit_spec.rb[1:3:8] | passed | 0.0002 seconds |
189
+ ./spec/configuration_spec.rb[1:1:1] | passed | 0.00008 seconds |
190
+ ./spec/configuration_spec.rb[1:2:1] | passed | 0.00005 seconds |
191
+ ./spec/configuration_spec.rb[1:3:1] | passed | 0.00005 seconds |
192
+ ./spec/configuration_spec.rb[1:3:2] | passed | 0.00004 seconds |
193
+ ./spec/configuration_spec.rb[1:3:3] | passed | 0.00004 seconds |
194
+ ./spec/configuration_spec.rb[1:3:4] | passed | 0.00006 seconds |
195
+ ./spec/configuration_spec.rb[1:4:1] | passed | 0.00006 seconds |
data/CHANGELOG.md CHANGED
@@ -1,5 +1,47 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.2.0] - 2025-04-14
4
+
5
+ ### Added
6
+
7
+ - **First-class Type System via `Castkit::Types`**:
8
+ - Introduced a formalized type system under `Castkit::Types`, where each primitive type (e.g., `:string`, `:integer`, `:boolean`) is represented by a class.
9
+ - Each type class implements `.deserialize`, `.serialize`, `.validate!`, and `.cast!`, allowing for strict control over coercion, validation, and extension.
10
+ - Developers may register custom types via `Castkit.configure`:
11
+
12
+ ```ruby
13
+ class CustomType < Castkit::Types::Base
14
+ def deserialize(value) ... end
15
+ def validate!(value, **) ... end
16
+ end
17
+
18
+ Castkit.configure do |config|
19
+ config.register_type :custom, CustomType
20
+ end
21
+ ```
22
+
23
+ - **New DSL for Building Contracts**:
24
+ - Added `Castkit::Contract.build`, a lightweight DSL for defining and validating structured input without requiring a full `DataObject`.
25
+ - Useful for validating inputs to services, operations, or external APIs.
26
+
27
+ ```ruby
28
+ UserContract = Castkit::Contract.build do
29
+ string :id
30
+ string :name, required: false
31
+ end
32
+
33
+ result = UserContract.validate(id: "123")
34
+ result.success? # => true
35
+ ```
36
+
37
+ - Contracts support:
38
+ - Primitive and nested `DataObject` types
39
+ - Optional fields, format, and type union support
40
+ - Strict/relaxed validation with unknown attribute handling
41
+ - Structured validation result via `Castkit::Contract::Result`
42
+
43
+ - **Union type validation support** for both `Castkit::DataObject` and contracts, allowing attributes to accept multiple types (e.g., `[:string, :integer]`).
44
+
3
45
  ## [0.1.2] - 2025-04-14
4
46
 
5
47
  ### Added