magic_data 0.0.2 → 1.0.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7cefb2906ebe6cc8d3753af9cdddab384e9d3352
4
- data.tar.gz: 250fab297bd6f560f7b720c55b14ec8f60c6eb64
3
+ metadata.gz: 2b2598a95b609d895213d7d23519d5dd1d3766b9
4
+ data.tar.gz: 92c5ec99aadad9e20bc3b597cf2a8dc989055cb6
5
5
  SHA512:
6
- metadata.gz: 9ad90fc49ca5aa6230b52d9af3cad488e96e7abffd43f314ba4c7d8e7dd120afcbda2eaec8f57e6b31be4a9d0af903c0c315c76fa9a0c63551f75fca3d08440d
7
- data.tar.gz: ae31d11e953f8db11c0f1ec79e722c0d4c282bf2ac1b74c4a0ff3e7f88120f2bf901facaa9c99ec9fb3f5cf439a6d8ba203a91d5f73c92415e5ca194cca469eb
6
+ metadata.gz: c3b4ee8565fce57d122f174a26cfba33c29ec9bbaaaf800c2ee8acc257a4471f0cdafc6b75631a7db8d5faedb8b1f7e1bc9085677e3920966ccf2b3856a9a40f
7
+ data.tar.gz: cea1ed720b708efc8d147356f80a7852d0234c60023ee1e37e08abea530ead2eb09c1c577f7c6a030c9890de7530dbbfafa94145271b7ce578796097c7bda40e
data/README.md CHANGED
@@ -1,6 +1,6 @@
1
- # WebTest
1
+ # Magic Data
2
2
 
3
- Welcome to Collector!
3
+ Magic Data is a lean and un-opinionated data generator where you provide the generation techniques! Generators can be set as a block or as a static value. Data generation is handled by requesting a specifc key or modifying a passed in hash. Most importantly, Magic Data supports retrieving the most recently generated value of any key!
4
4
 
5
5
  ## Installation
6
6
 
@@ -10,17 +10,63 @@ Add this line to your application's Gemfile:
10
10
  gem 'magic_data'
11
11
  ```
12
12
 
13
- And then execute:
13
+ ## Usage
14
14
 
15
- $ bundle
15
+ ##### Creating generators with a block
16
+ ```ruby
17
+ MagicData.set('~username') {rand(36**10).to_s(36) << '.51d281ef@mailosaur.io'}
18
+ MagicData.set('~password') {rand(36**10).to_s(36)}
19
+ ```
16
20
 
17
- Or install it yourself as:
21
+ ##### Creating generators with a static value
22
+ ```ruby
23
+ MagicData.set('~existing_username', 'tk8817@test.com')
24
+ MagicData.set('~existing_username', FigNewton.existing_password) #example uses Cheezy's FigNewton lib
25
+ ```
18
26
 
19
- $ gem install magic_data
27
+ ##### Invoking block generators
28
+ This will return a value generated from the block provided during creation
29
+ ```ruby
30
+ MagicData.get('~username')
31
+ # => ch3jdb68sjhnss21.51d281ef@mailosaur.io
20
32
 
21
- ## Usage
33
+ MagicData.get('~username')
34
+ # => h4dnsah28s2hs27hd3.51d281ef@mailosaur.io
35
+ ```
22
36
 
23
- TODO: Write usage instructions here
37
+ ##### Retrieving latest block generated value
38
+ ```ruby
39
+ MagicData.get_latest('~username')
40
+ # => h4dnsah28s2hs27hd3.51d281ef@mailosaur.io
41
+ ```
42
+
43
+ ##### Modifying hash with magic_data (return full hash)
44
+ ```ruby
45
+ input = {user_login: '~username', user_password: '~password', user_phone: '555-555-5555'}
46
+ MagicData.process(input)
47
+ # => {user_login: 'vb39hsb2s.51d281ef@mailosaur.io', user_password: '9fj4h3hnssoqlks', user_phone: '555-555-5555'}
48
+ ```
49
+
50
+ ##### Modifying hash with magic_data (return only modified data)
51
+ ```ruby
52
+ input = {user_login: '~username', user_password: '~password', user_phone: '555-555-5555'}
53
+ MagicData.process(input, true)
54
+ # => {user_login: 'dh2nsh17ahs.51d281ef@mailosaur.io', user_password: 'k4jn60d2ja'}
55
+ ```
56
+
57
+ ##### Invoking static value
58
+ This will return the static value set during creation
59
+ ```ruby
60
+ MagicData.get('~existing_username')
61
+ # => tk8817@test.com
62
+ ```
63
+
64
+ ##### Retrieving latest static value
65
+ There is not much value in this, but you can do it.
66
+ ```ruby
67
+ MagicData.get__latest('~existing_username')
68
+ # => tk8817@test.com
69
+ ```
24
70
 
25
71
  ## Development
26
72
 
@@ -28,4 +74,3 @@ TODO: Write usage instructions here
28
74
  ## License
29
75
 
30
76
  The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
31
-
@@ -1,7 +1,5 @@
1
1
  # encoding: utf-8
2
2
 
3
- require 'magic_logger'
4
-
5
3
  class MagicData
6
4
 
7
5
  @magic={}
@@ -9,25 +7,24 @@ class MagicData
9
7
 
10
8
  class << self
11
9
 
12
- def form(fields)
10
+ def process(fields, diff_only=false)
13
11
  modified = {}
14
12
  fields.each do |key, value|
15
- @saved["latest_#{value}"]= modified[key] = @magic[value].call if @magic.key?(value)
13
+ @saved["latest_#{value}"]= modified[key] = @magic[value].call if @MagicData.key?(value)
16
14
  modified[key] = @saved[value] if @saved.key?(value)
17
15
  end
18
- MagicLogger.log('magic_data', modified)
19
- fields.merge(modified)
16
+ diff_only ? modified : fields.merge(modified)
20
17
  end
21
18
 
22
19
  def set(key, value = nil, &block)
23
20
  @magic[key] = block_given? ? block : lambda { "#{value}" }
24
21
  end
25
22
 
26
- def retrieve(key)
23
+ def get(key)
27
24
  @magic[key].call
28
25
  end
29
26
 
30
- def latest(key)
27
+ def get_latest(key)
31
28
  @saved["latest_#{key}"]
32
29
  end
33
30
 
@@ -1,3 +1,3 @@
1
1
  module Version
2
- VERSION = "0.0.2"
2
+ VERSION = "1.0.0"
3
3
  end
data/magic_data.gemspec CHANGED
@@ -17,8 +17,6 @@ Gem::Specification.new do |spec|
17
17
  spec.platform = Gem::Platform::RUBY
18
18
  spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
19
19
  spec.require_paths = ['lib']
20
-
21
- spec.add_runtime_dependency 'magic_logger', '~> 0.0', '>= 0.0.2'
22
20
  end
23
21
 
24
22
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: magic_data
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Commu
@@ -9,27 +9,7 @@ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
11
  date: 2016-05-29 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: magic_logger
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '0.0'
20
- - - ">="
21
- - !ruby/object:Gem::Version
22
- version: 0.0.2
23
- type: :runtime
24
- prerelease: false
25
- version_requirements: !ruby/object:Gem::Requirement
26
- requirements:
27
- - - "~>"
28
- - !ruby/object:Gem::Version
29
- version: '0.0'
30
- - - ">="
31
- - !ruby/object:Gem::Version
32
- version: 0.0.2
12
+ dependencies: []
33
13
  description: magic_data allows a user to setup dynamic keys at runtime and lets them
34
14
  retrieve the most recently generated value
35
15
  email:
@@ -45,7 +25,6 @@ files:
45
25
  - lib/magic_data.rb
46
26
  - lib/magic_data/magic_data.rb
47
27
  - lib/magic_data/version.rb
48
- - magic_data-0.0.1.gem
49
28
  - magic_data.gemspec
50
29
  homepage: https://loblawdigital.ca
51
30
  licenses:
data/magic_data-0.0.1.gem DELETED
Binary file