magic_data 0.0.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
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