reflekt 0.1.0 → 0.1.1

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 (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/reflekt.rb +23 -2
  3. metadata +31 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a89b5337a81d488c544ebb0d99d776ab3023f247170ca3921e6b3bd7e95d434c
4
- data.tar.gz: 318edd93d1a77f78ff65de68510146ecbae84975b09da0e07d2ac4ee64176e15
3
+ metadata.gz: 6e102804227ba45be7436324468a4c9f56964dc25e3b54b3281c7e4e95529049
4
+ data.tar.gz: 0da3df0bee7127d33ca304b9d0f98e8c9334afe302aa0bace108f4d9eb041b76
5
5
  SHA512:
6
- metadata.gz: 05ff6c5822257819b093ce9625aad2b85fbe676673cef28a17e4d6cc47b0e2cba323ccf0c72b3ac6bc96320efa811f71681cf9c8ee6f2ba132535c9a3d5d646e
7
- data.tar.gz: 4fa5958b8766c9604e636ec180cf2b83bfd2cfc5423681b96f1bc01aaa944aae13da319b9ec4514b6be1a94ed590f64761f84b88d85484cc05593dcd543d6c27
6
+ metadata.gz: 2218c96406397ff88927c7e08114722de6b37aacf1070165bbe338c7501ba4850a568014d87bdfc512d1d5ca1749fe427d899908e35c63962a8ad36f754627f1
7
+ data.tar.gz: 77c711a2414d62c170046f4f439fea7266fad426c9dd62dda042b289945c75947428e4921d929609c74edea1b7637d3e248e8de052ee0c22c3804e8887c48196
@@ -1,4 +1,5 @@
1
1
  require 'set'
2
+ require 'rowdb'
2
3
 
3
4
  ################################################################################
4
5
  # REFLEKT
@@ -80,9 +81,29 @@ module Reflekt
80
81
 
81
82
  end
82
83
 
84
+ private
85
+
83
86
  # Prepend Klass to the instance's singleton class.
84
87
  def self.prepended(base)
85
88
  base.singleton_class.prepend(Klass)
89
+
90
+ @@setup ||= setup_klass
91
+ end
92
+
93
+ # Setup Klass.
94
+ def self.setup_klass()
95
+
96
+ # Create "reflections" directory in current execution path.
97
+ # TODO: Allow global config override of path.
98
+ dir_path = File.join(Dir.pwd, 'reflections')
99
+ unless Dir.exist? dir_path
100
+ Dir.mkdir(dir_path)
101
+ end
102
+
103
+ @@db = Rowdb.new(:file_system, dir_path + '/db.json')
104
+ @@db.defaults({items: []})
105
+
106
+ return true
86
107
  end
87
108
 
88
109
  module Klass
@@ -90,11 +111,11 @@ module Reflekt
90
111
  @@deflekted_methods = Set.new
91
112
 
92
113
  ##
93
- # Don't reflekt every method.
114
+ # Skip a method.
94
115
  #
95
116
  # method - A symbol representing the method name.
96
117
  ##
97
- def deflekt(method)
118
+ def reflekt_skip(method)
98
119
  @@deflekted_methods.add(method)
99
120
  end
100
121
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reflekt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maedi Prichard
@@ -9,8 +9,36 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2020-07-18 00:00:00.000000000 Z
12
- dependencies: []
13
- description: Reflection-driven development using reflection testing.
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: oj
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rowdb
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: Reflection-driven development via reflection testing.
14
42
  email: maediprichard@gmailcom
15
43
  executables: []
16
44
  extensions: []