nrser 0.2.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 (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