nrser 0.2.2 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (188) hide show
  1. checksums.yaml +4 -4
  2. data/lib/nrser/char/alpha_numeric_sub.rb +1 -2
  3. data/lib/nrser/char.rb +0 -6
  4. data/lib/nrser/core_ext/array.rb +120 -0
  5. data/lib/nrser/core_ext/binding.rb +44 -0
  6. data/lib/nrser/{functions → core_ext}/enumerable/find_map.rb +18 -15
  7. data/lib/nrser/{ext → core_ext}/enumerable.rb +10 -24
  8. data/lib/nrser/core_ext/exception.rb +30 -0
  9. data/lib/nrser/core_ext/hash/extract_values_at.rb +49 -0
  10. data/lib/nrser/core_ext/hash/transform_values_with_keys.rb +24 -0
  11. data/lib/nrser/core_ext/hash.rb +50 -0
  12. data/lib/nrser/core_ext/module/method_objects.rb +96 -0
  13. data/lib/nrser/core_ext/module/names.rb +69 -0
  14. data/lib/nrser/core_ext/module/source_locations.rb +214 -0
  15. data/lib/nrser/core_ext/module.rb +2 -0
  16. data/lib/nrser/core_ext/object/lazy_var.rb +31 -0
  17. data/lib/nrser/core_ext/object.rb +46 -0
  18. data/lib/nrser/core_ext/open_struct.rb +6 -0
  19. data/lib/nrser/{ext → core_ext}/pathname.rb +8 -5
  20. data/lib/nrser/{ext → core_ext}/string.rb +6 -12
  21. data/lib/nrser/core_ext/symbol.rb +13 -0
  22. data/lib/nrser/core_ext/time.rb +46 -0
  23. data/lib/nrser/core_ext.rb +13 -0
  24. data/lib/nrser/errors/abstract_method_error.rb +150 -0
  25. data/lib/nrser/errors/argument_error.rb +42 -0
  26. data/lib/nrser/errors/nicer_error.rb +298 -72
  27. data/lib/nrser/errors/type_error.rb +46 -0
  28. data/lib/nrser/errors.rb +4 -53
  29. data/lib/nrser/ext/tree.rb +3 -0
  30. data/lib/nrser/functions/enumerable/associate.rb +6 -9
  31. data/lib/nrser/functions/enumerable/include_slice.rb +2 -3
  32. data/lib/nrser/functions/enumerable.rb +1 -3
  33. data/lib/nrser/functions/exception.rb +1 -1
  34. data/lib/nrser/functions/hash.rb +0 -6
  35. data/lib/nrser/functions/merge_by.rb +2 -2
  36. data/lib/nrser/functions/module/method_objects.rb +77 -0
  37. data/lib/nrser/functions/module.rb +1 -2
  38. data/lib/nrser/functions/open_struct.rb +25 -35
  39. data/lib/nrser/functions/proc.rb +1 -6
  40. data/lib/nrser/functions/string/looks_like.rb +32 -1
  41. data/lib/nrser/functions/string.rb +1 -40
  42. data/lib/nrser/functions/text/lines.rb +2 -1
  43. data/lib/nrser/functions.rb +0 -1
  44. data/lib/nrser/graph/tsorter.rb +41 -0
  45. data/lib/nrser/labs/core_ext/binding.rb +37 -0
  46. data/lib/nrser/labs/stash.rb +372 -0
  47. data/lib/nrser/{logging → log}/appender/sync.rb +3 -3
  48. data/lib/nrser/log/appender.rb +3 -0
  49. data/lib/nrser/{logging → log}/formatters/color.rb +47 -20
  50. data/lib/nrser/log/formatters/mixin.rb +270 -0
  51. data/lib/nrser/{logging → log}/formatters.rb +0 -0
  52. data/lib/nrser/log/logger.rb +229 -0
  53. data/lib/nrser/log/mixin.rb +56 -0
  54. data/lib/nrser/log.rb +723 -0
  55. data/lib/nrser/message.rb +24 -3
  56. data/lib/nrser/meta/source/location.rb +158 -0
  57. data/lib/nrser/meta.rb +1 -1
  58. data/lib/nrser/props/class_methods.rb +118 -0
  59. data/lib/nrser/props/immutable/hash.rb +111 -0
  60. data/lib/nrser/props/immutable/hash_variable.rb +82 -0
  61. data/lib/nrser/props/immutable/instance_variables.rb +48 -0
  62. data/lib/nrser/props/immutable/vector.rb +107 -0
  63. data/lib/nrser/props/instance_methods.rb +184 -0
  64. data/lib/nrser/props/metadata.rb +359 -0
  65. data/lib/nrser/props/mutable/instance_variables.rb +60 -0
  66. data/lib/nrser/props/mutable/stash.rb +199 -0
  67. data/lib/nrser/{meta/props → props}/prop.rb +217 -112
  68. data/lib/nrser/props/storage/instance_variable.rb +85 -0
  69. data/lib/nrser/props/storage/instance_variables.rb +67 -0
  70. data/lib/nrser/props/storage/key.rb +88 -0
  71. data/lib/nrser/props.rb +9 -0
  72. data/lib/nrser/refinements/sugar.rb +41 -0
  73. data/lib/nrser/refinements/types.rb +2 -2
  74. data/lib/nrser/refinements.rb +14 -16
  75. data/lib/nrser/rspex/example_group/describe_attribute.rb +24 -0
  76. data/lib/nrser/rspex/example_group/describe_called_with.rb +1 -6
  77. data/lib/nrser/rspex/example_group/{describe_use_case.rb → describe_case.rb} +6 -3
  78. data/lib/nrser/rspex/example_group/describe_class.rb +1 -0
  79. data/lib/nrser/rspex/example_group/describe_group.rb +29 -0
  80. data/lib/nrser/rspex/example_group/describe_instance_method.rb +2 -2
  81. data/lib/nrser/rspex/example_group/describe_message.rb +35 -0
  82. data/lib/nrser/rspex/example_group/describe_method.rb +23 -2
  83. data/lib/nrser/rspex/example_group/describe_module.rb +19 -0
  84. data/lib/nrser/rspex/example_group/describe_response_to.rb +32 -0
  85. data/lib/nrser/rspex/example_group/describe_section.rb +38 -0
  86. data/lib/nrser/rspex/example_group/describe_sent_to.rb +52 -0
  87. data/lib/nrser/rspex/example_group/describe_source_file.rb +49 -0
  88. data/lib/nrser/rspex/example_group/describe_spec_file.rb +41 -108
  89. data/lib/nrser/rspex/example_group/describe_when.rb +14 -7
  90. data/lib/nrser/rspex/example_group/describe_x.rb +39 -12
  91. data/lib/nrser/rspex/example_group/overrides.rb +66 -0
  92. data/lib/nrser/rspex/example_group.rb +20 -252
  93. data/lib/nrser/rspex/format.rb +83 -17
  94. data/lib/nrser/rspex.rb +4 -34
  95. data/lib/nrser/sugar/method_missing_forwarder.rb +50 -0
  96. data/lib/nrser/{env → sys/env}/path.rb +1 -2
  97. data/lib/nrser/{env.rb → sys/env.rb} +2 -1
  98. data/lib/nrser/sys.rb +5 -0
  99. data/lib/nrser/types/any.rb +36 -7
  100. data/lib/nrser/types/{array.rb → arrays.rb} +32 -81
  101. data/lib/nrser/types/attrs.rb +68 -15
  102. data/lib/nrser/types/booleans.rb +95 -34
  103. data/lib/nrser/types/bounded.rb +12 -10
  104. data/lib/nrser/types/combinators.rb +74 -37
  105. data/lib/nrser/types/errors/check_error.rb +86 -0
  106. data/lib/nrser/types/errors/from_string_error.rb +82 -0
  107. data/lib/nrser/types/factory.rb +91 -0
  108. data/lib/nrser/types/hashes.rb +171 -26
  109. data/lib/nrser/types/in.rb +25 -12
  110. data/lib/nrser/types/is.rb +50 -18
  111. data/lib/nrser/types/is_a.rb +52 -33
  112. data/lib/nrser/types/labels.rb +6 -33
  113. data/lib/nrser/types/maybe.rb +12 -4
  114. data/lib/nrser/types/nil.rb +24 -4
  115. data/lib/nrser/types/not.rb +6 -16
  116. data/lib/nrser/types/numbers.rb +94 -57
  117. data/lib/nrser/types/pairs.rb +57 -57
  118. data/lib/nrser/types/paths.rb +112 -133
  119. data/lib/nrser/types/responds.rb +64 -74
  120. data/lib/nrser/types/shape.rb +29 -24
  121. data/lib/nrser/types/strings.rb +25 -17
  122. data/lib/nrser/types/symbols.rb +19 -17
  123. data/lib/nrser/types/trees.rb +18 -70
  124. data/lib/nrser/types/tuples.rb +36 -40
  125. data/lib/nrser/types/type.rb +342 -91
  126. data/lib/nrser/types/when.rb +40 -18
  127. data/lib/nrser/types/where.rb +94 -9
  128. data/lib/nrser/types.rb +72 -63
  129. data/lib/nrser/version.rb +1 -1
  130. data/lib/nrser.rb +18 -18
  131. data/spec/lib/nrser/{functions/binding/template_spec.rb → core_ext/binding/erb_spec.rb} +5 -5
  132. data/spec/lib/nrser/{functions → core_ext}/enumerable/find_map_spec.rb +8 -6
  133. data/spec/lib/nrser/{refinements → core_ext}/hash_spec.rb +9 -22
  134. data/spec/lib/nrser/errors/abstract_method_error_spec.rb +12 -5
  135. data/spec/lib/nrser/functions/enumerable/{to_h_by_spec.rb → associate_spec.rb} +1 -1
  136. data/spec/lib/nrser/functions/merge_by_spec.rb +1 -1
  137. data/spec/lib/nrser/functions/tree/each_branch_spec.rb +3 -3
  138. data/spec/lib/nrser/functions/tree/transform_spec.rb +14 -15
  139. data/spec/lib/nrser/gem_ext/hamster/json_spec.rb +4 -0
  140. data/spec/lib/nrser/meta/source/location_spec.rb +86 -0
  141. data/spec/lib/nrser/props/immutable/hash_spec.rb +297 -0
  142. data/spec/lib/nrser/props/immutable/vector_spec.rb +296 -0
  143. data/spec/lib/nrser/{meta/props_spec.rb → props/original_props_spec.rb} +11 -16
  144. data/spec/lib/nrser/{meta/props → props}/to_and_from_data_spec.rb +10 -8
  145. data/spec/lib/nrser/refinements/array_spec.rb +2 -15
  146. data/spec/lib/nrser/refinements/erb_spec.rb +5 -7
  147. data/spec/lib/nrser/refinements/set_spec.rb +2 -15
  148. data/spec/lib/nrser/{env → sys/env}/path/insert_spec.rb +4 -2
  149. data/spec/lib/nrser/{env → sys/env}/path_spec.rb +4 -2
  150. data/spec/lib/nrser/types/array_spec.rb +8 -8
  151. data/spec/lib/nrser/types/paths_spec.rb +15 -18
  152. data/spec/spec_helper.rb +4 -0
  153. metadata +109 -69
  154. data/lib/nrser/ext/binding.rb +0 -36
  155. data/lib/nrser/ext/module.rb +0 -62
  156. data/lib/nrser/ext.rb +0 -8
  157. data/lib/nrser/functions/binding.rb +0 -76
  158. data/lib/nrser/functions/enumerable/map_keys.rb +0 -0
  159. data/lib/nrser/functions/enumerable/map_values.rb +0 -94
  160. data/lib/nrser/functions/hash/deep_merge.rb +0 -57
  161. data/lib/nrser/functions/hash/except_keys.rb +0 -44
  162. data/lib/nrser/functions/hash/slice_keys.rb +0 -43
  163. data/lib/nrser/functions/hash/stringify_keys.rb +0 -55
  164. data/lib/nrser/functions/hash/symbolize_keys.rb +0 -57
  165. data/lib/nrser/functions/hash/transform_keys.rb +0 -140
  166. data/lib/nrser/functions/module/methods.rb +0 -206
  167. data/lib/nrser/functions/module/source_locations.rb +0 -213
  168. data/lib/nrser/logging/appender.rb +0 -3
  169. data/lib/nrser/logging.rb +0 -353
  170. data/lib/nrser/meta/props/base.rb +0 -31
  171. data/lib/nrser/meta/props.rb +0 -357
  172. data/lib/nrser/refinements/array.rb +0 -133
  173. data/lib/nrser/refinements/binding.rb +0 -6
  174. data/lib/nrser/refinements/enumerator.rb +0 -5
  175. data/lib/nrser/refinements/exception.rb +0 -35
  176. data/lib/nrser/refinements/hash.rb +0 -150
  177. data/lib/nrser/refinements/module.rb +0 -5
  178. data/lib/nrser/refinements/object.rb +0 -42
  179. data/lib/nrser/refinements/open_struct.rb +0 -28
  180. data/lib/nrser/refinements/pathname.rb +0 -5
  181. data/lib/nrser/refinements/set.rb +0 -5
  182. data/lib/nrser/refinements/string.rb +0 -5
  183. data/lib/nrser/refinements/symbol.rb +0 -20
  184. data/lib/nrser/rspex/described.rb +0 -99
  185. data/spec/design/mapping_spec.rb +0 -42
  186. data/spec/lib/nrser/functions/hash_spec.rb +0 -41
  187. data/spec/lib/nrser/functions/string/truncate_spec.rb +0 -11
  188. data/spec/lib/nrser/refinements/truncate_spec.rb +0 -10
@@ -1,13 +1,9 @@
1
- require 'spec_helper'
1
+ require 'nrser/props'
2
+ require 'nrser/props/immutable/hash_variable'
2
3
 
3
- require 'nrser/refinements'
4
- using NRSER
5
-
6
- require 'nrser/refinements/types'
7
4
  using NRSER::Types
8
5
 
9
-
10
- describe NRSER::Meta::Props do
6
+ describe NRSER::Props do
11
7
 
12
8
  context "simple Point class" do
13
9
 
@@ -15,7 +11,7 @@ describe NRSER::Meta::Props do
15
11
  # =====================================================================
16
12
 
17
13
  let(:point_class) {
18
- Class.new(NRSER::Meta::Props::Base) do
14
+ Class.new( NRSER::Props::Immutable::HashVariable::Base ) do
19
15
  # So that error messages look right
20
16
  def self.name; 'Point'; end
21
17
 
@@ -38,7 +34,7 @@ describe NRSER::Meta::Props do
38
34
  it {
39
35
  is_expected.to be_a( Hash ).and have_attributes \
40
36
  keys: eq( [:x, :y, :blah] ),
41
- values: all( be_a NRSER::Meta::Props::Prop )
37
+ values: all( be_a NRSER::Props::Prop )
42
38
  }
43
39
 
44
40
  describe 'primary props `x` and `y`' do
@@ -47,7 +43,7 @@ describe NRSER::Meta::Props do
47
43
  subject { super()[name] }
48
44
 
49
45
  include_examples "expect subject", to: {
50
- be_a: NRSER::Meta::Props::Prop,
46
+ be_a: NRSER::Props::Prop,
51
47
  have_attributes: {
52
48
  source?: false,
53
49
  primary?: true,
@@ -57,11 +53,11 @@ describe NRSER::Meta::Props do
57
53
  end
58
54
  end # primary props `x` and `y`'
59
55
 
60
- describe "derived (sourced) prop `blah`" do
56
+ describe "derived (sourced) prop `blah`" do
61
57
  subject { super()[:blah] }
62
58
 
63
59
  include_examples "expect subject", to: {
64
- be_a: NRSER::Meta::Props::Prop,
60
+ be_a: NRSER::Props::Prop,
65
61
  have_attributes: {
66
62
  source?: true,
67
63
  primary?: false,
@@ -84,7 +80,7 @@ describe NRSER::Meta::Props do
84
80
  and have_attributes(
85
81
  keys: eq( [:x, :y] ),
86
82
  values: all(
87
- be_a( NRSER::Meta::Props::Prop ).
83
+ be_a( NRSER::Props::Prop ).
88
84
  and have_attributes source?: false, primary?: true
89
85
  )
90
86
  )
@@ -140,7 +136,7 @@ describe NRSER::Meta::Props do
140
136
  raising: {
141
137
  [ {x: 1, y: 'why?'} ] => [
142
138
  TypeError,
143
- /Value of type String for prop Point\#y\s+failed type check/m
139
+ /Value \"why\?\" failed check for type/m
144
140
  ],
145
141
  }
146
142
  end # .new
@@ -160,5 +156,4 @@ describe NRSER::Meta::Props do
160
156
 
161
157
  end # simple Point class
162
158
 
163
- end # NRSER::Meta::Props
164
-
159
+ end # NRSER::Props::Props
@@ -1,13 +1,10 @@
1
- require 'nrser/meta/props'
1
+ require 'nrser/props'
2
+ require 'nrser/props/immutable/hash_variable'
2
3
 
3
- require 'nrser/refinements'
4
- using NRSER
5
-
6
- require 'nrser/refinements/types'
7
4
  using NRSER::Types
8
5
 
9
6
 
10
- describe NRSER::Meta::Props do
7
+ describe NRSER::Props do
11
8
 
12
9
  describe_section "to and from data" do
13
10
  # ========================================================================
@@ -16,7 +13,9 @@ describe NRSER::Meta::Props do
16
13
  unsigned = t.unsigned
17
14
 
18
15
  before( :all ) {
19
- Cat = @cat_class = Class.new( NRSER::Meta::Props::Base ) do
16
+ Cat = @cat_class = Class.new(
17
+ NRSER::Props::Immutable::HashVariable::Base
18
+ ) do
20
19
  prop :name, type: non_empty_str
21
20
  prop :breed, type: non_empty_str
22
21
  prop :age, type: unsigned
@@ -33,7 +32,10 @@ describe NRSER::Meta::Props do
33
32
  # instance variable of the new class.
34
33
  cat_class = @cat_class
35
34
 
36
- @owner_class = Class.new( NRSER::Meta::Props::Base ) do
35
+ @owner_class = Class.new(
36
+ NRSER::Props::Immutable::HashVariable::Base
37
+ ) do
38
+
37
39
  prop :name, type: non_empty_str
38
40
 
39
41
  prop :cat, type: cat_class
@@ -1,18 +1,5 @@
1
1
  require 'spec_helper'
2
2
 
3
- using NRSER
4
-
5
- describe 'Refinement Array#map_values' do
6
- it do
7
- expect(
8
- [:x, :y].map_values { |value| "Yo I'm #{ value }!" }
9
- ).to eq(
10
- {x: "Yo I'm x!", y: "Yo I'm y!"}
11
- )
12
- end
13
- end # Refinement Array#map_values
14
-
15
-
16
3
  describe 'Refinement Array#find_bounded' do
17
4
  it do
18
5
  expect(
@@ -23,7 +10,7 @@ describe 'Refinement Array#find_bounded' do
23
10
  [1, 2, 3].find_bounded(length: 2) { |i| i == 2 }
24
11
  }.to raise_error TypeError
25
12
  end
26
- end # Refinement Array#map_values
13
+ end # Refinement Array#find_bounded
27
14
 
28
15
 
29
16
  describe 'Refinement Array#find_only' do
@@ -36,7 +23,7 @@ describe 'Refinement Array#find_only' do
36
23
  [1, 2, 3].find_only { |i| i >= 2 }
37
24
  }.to raise_error TypeError
38
25
  end
39
- end # Refinement Array#map_values
26
+ end # Refinement Array#find_only
40
27
 
41
28
 
42
29
  describe "Refinement Array#leaves" do
@@ -1,12 +1,8 @@
1
- require 'spec_helper'
2
-
3
- require 'nrser/refinements'
4
- using NRSER
5
-
6
1
  require 'nrser/refinements/types'
7
2
  using NRSER::Types
8
3
 
9
- require 'nrser/meta/props'
4
+ require 'nrser/props'
5
+ require 'nrser/props/immutable/hash_variable'
10
6
 
11
7
  describe 'Binding#erb' do
12
8
  it "refines NRSER.erb into Binding" do
@@ -87,7 +83,9 @@ END
87
83
 
88
84
 
89
85
  it "works on a real-world example" do
90
- ERBSpecTester = Class.new( NRSER::Meta::Props::Base ) do
86
+ ERBSpecTester = Class.new do
87
+ include NRSER::Props::Immutable::HashVariable
88
+
91
89
  prop :x, type: t.int, from_data: {hey: 'ho', lets: 'go!'}
92
90
  end
93
91
 
@@ -1,16 +1,3 @@
1
- require 'spec_helper'
2
-
3
- using NRSER
4
-
5
- describe 'Refinement Set#map_values' do
6
- it do
7
- expect(
8
- Set[:x, :y].map_values { |value| "Yo I'm #{ value }!" }
9
- ).to eq(
10
- {x: "Yo I'm x!", y: "Yo I'm y!"}
11
- )
12
- end
13
- end # Refinement Set#map_values
14
1
 
15
2
  describe 'Refinement Set#find_bounded' do
16
3
  subject { Set[1, 2, 3] }
@@ -24,7 +11,7 @@ describe 'Refinement Set#find_bounded' do
24
11
  subject.find_bounded(length: 2) { |i| i == 2 }
25
12
  }.to raise_error TypeError
26
13
  end
27
- end # Refinement Set#map_values
14
+ end # Refinement Set#find_bounded
28
15
 
29
16
  describe 'Refinement Set#find_only' do
30
17
  subject { Set[1, 2, 3] }
@@ -38,4 +25,4 @@ describe 'Refinement Set#find_only' do
38
25
  subject.find_only { |i| i >= 2 }
39
26
  }.to raise_error TypeError
40
27
  end
41
- end # Refinement Set#map_values
28
+ end # Refinement Set#find_only
@@ -1,6 +1,8 @@
1
+ require 'nrser/sys/env'
2
+
1
3
  describe_spec_file(
2
4
  spec_path: __FILE__,
3
- class: NRSER::Env::Path,
5
+ class: NRSER::Sys::Env::Path,
4
6
  instance_method: :insert,
5
7
  ) do
6
8
 
@@ -9,7 +11,7 @@ describe_spec_file(
9
11
  to the string result from `#to_s`
10
12
  } do
11
13
 
12
- let( :path ) { NRSER::Env::Path.new source }
14
+ let( :path ) { NRSER::Sys::Env::Path.new source }
13
15
  subject { path.insert( *args ).to_s }
14
16
 
15
17
  describe_use_case(
@@ -1,12 +1,14 @@
1
+ require 'nrser/sys/env'
2
+
1
3
  describe_spec_file(
2
4
  spec_path: __FILE__,
3
- class: NRSER::Env::Path,
5
+ class: NRSER::Sys::Env::Path,
4
6
  ) do
5
7
 
6
8
  describe_method :from_ENV do
7
9
  it "loads from ENV['PATH']" do
8
10
  expect( subject.call :PATH ).to be_a( described_class )
9
11
  end
10
- end # Method :from_ENV Description
12
+ end # Method :from_ENV Description
11
13
 
12
14
  end # spec
@@ -1,7 +1,5 @@
1
- require 'spec_helper'
2
-
3
- require 'nrser/refinements'
4
- using NRSER
1
+ # encoding: UTF-8
2
+ # frozen_string_literal: true
5
3
 
6
4
  require 'nrser/refinements/types'
7
5
  using NRSER::Types
@@ -10,8 +8,11 @@ using NRSER::Types
10
8
  # NRSER::Types.array
11
9
  # ========================================================================
12
10
  #
13
- describe "NRSER::Types.array" do
14
- subject { t.method :array }
11
+ describe_spec_file(
12
+ spec_path: __FILE__,
13
+ module: NRSER::Types,
14
+ method: :array,
15
+ ) do
15
16
 
16
17
  it_behaves_like 'type maker method'
17
18
 
@@ -49,7 +50,7 @@ describe "NRSER::Types.array" do
49
50
  to: {
50
51
  have_attributes: {
51
52
  class: t::ArrayType,
52
- name: 'ArrayType',
53
+ name: 'Array',
53
54
  }
54
55
  }
55
56
  }
@@ -79,4 +80,3 @@ describe "NRSER::Types.array" do
79
80
  end # NRSER::Types.array
80
81
 
81
82
  # ************************************************************************
82
-
@@ -1,10 +1,10 @@
1
- require 'spec_helper'
1
+ describe_spec_file(
2
+ spec_path: __FILE__,
3
+ source_file: 'nrser/types/paths.rb',
4
+ module: NRSER::Types,
5
+ ) do
2
6
 
3
- describe_file 'types/paths.rb' do
4
-
5
- describe "NRSER::Types.dir_path" do
6
- subject { NRSER::Types.method :dir_path }
7
-
7
+ describe_method :dir_path do
8
8
  include_examples 'make type',
9
9
  accepts: [
10
10
  '.',
@@ -20,10 +20,10 @@ describe_file 'types/paths.rb' do
20
20
  Pathname.getwd => Pathname.getwd.to_s,
21
21
  }
22
22
 
23
- end # NRSER::Types.dir_path
24
-
25
- describe "NRSER::Types.file_path" do
26
- subject { NRSER::Types.method :file_path }
23
+ end # method .dir_path
24
+
25
+
26
+ describe_method :file_path do
27
27
 
28
28
  include_examples 'make type',
29
29
  accepts: [
@@ -67,12 +67,10 @@ describe_file 'types/paths.rb' do
67
67
  }
68
68
  end # custom name
69
69
 
70
- end # NRSER::Types.dir_path
70
+ end # method .dir_path
71
71
 
72
72
 
73
- describe 'NRSER::Types.path_seg' do
74
- subject { NRSER::Types.method :path_seg }
75
-
73
+ describe_method :path_seg do
76
74
  include_examples 'make type',
77
75
  accepts: [
78
76
  'hey',
@@ -89,9 +87,8 @@ describe_file 'types/paths.rb' do
89
87
  name: 'POSIXPathSegment',
90
88
  }
91
89
  }
92
- }
90
+ }
93
91
 
94
- end # NRSER::Types.path_seg
95
-
92
+ end # method .path_seg
96
93
 
97
- end
94
+ end
data/spec/spec_helper.rb CHANGED
@@ -17,6 +17,7 @@ require 'cmds'
17
17
  # Project / Package
18
18
  # -----------------------------------------------------------------------
19
19
  require 'nrser'
20
+ require 'nrser/refinements/types'
20
21
  require 'nrser/rspex'
21
22
 
22
23
  # Local Tree
@@ -28,6 +29,9 @@ RSpec.configure do |config|
28
29
  unless ENV['LABS']
29
30
  config.filter_run_excluding labs: true
30
31
  end
32
+
33
+ config.example_status_persistence_file_path = \
34
+ NRSER::ROOT / 'tmp' / ".rspec_status"
31
35
  end
32
36
 
33
37