easy_keygen 0.0.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.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a53e49180bbfe621ae970971d05d027c9627b0ea
4
+ data.tar.gz: c88cb0452e73591911d16ad7558abdbc398ad877
5
+ SHA512:
6
+ metadata.gz: d57dceb9d9c0cb9024d0d1c74bae1f061e1d1bb9f80b10d8877dd93679b020078250547702366b77bcacf7e107a2edd636865d915db7e9b0ddf374d3bd091dc6
7
+ data.tar.gz: f9bf1d337ff49f565297e095500ee16708ed7ea9f2c6404c7db0ba529ba2a35535037651d5a90b43a1d49be1b18f7192f5ade80167bef4a40b5e19fd8d952821
data/.gitignore ADDED
@@ -0,0 +1,17 @@
1
+ *.gem
2
+ *.rbc
3
+ .bundle
4
+ .config
5
+ .yardoc
6
+ Gemfile.lock
7
+ InstalledFiles
8
+ _yardoc
9
+ coverage
10
+ doc/
11
+ lib/bundler/man
12
+ pkg
13
+ rdoc
14
+ spec/reports
15
+ test/tmp
16
+ test/version_tmp
17
+ tmp
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --color
2
+ --format documentation
3
+ --fail-fast
data/.ruby-gemset ADDED
@@ -0,0 +1 @@
1
+ easykeygen
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ ruby-2.0.0-p247
data/.travis.yml ADDED
@@ -0,0 +1,10 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.0.0
4
+ notifications:
5
+ email: false
6
+ irc:
7
+ on_success: change
8
+ on_failure: always
9
+ channels:
10
+ - irc.freenode.org#rubyonadhd
data/Changelog.md ADDED
@@ -0,0 +1,7 @@
1
+ # EasyKeygen Changelog
2
+
3
+ ## 0.0.1
4
+
5
+ Released September 26, 2013 ([0.0.1](https://github.com/alaude/easy_keygen/tree/v0.0.1)).
6
+
7
+ * Initial Release.
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in easy_keygen.gemspec
4
+ gemspec
data/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2013 John C. Molina
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,43 @@
1
+ # EasyKeygen [![Build Status](https://travis-ci.org/Alaude/easy_keygen.png?branch=master)](https://travis-ci.org/Alaude/easy_keygen) [![Code Climate](https://codeclimate.com/github/Alaude/easy_keygen.png)](https://codeclimate.com/github/Alaude/easy_keygen)
2
+
3
+ A Ruby Gem and Command-Line Application Key Generator with encryption options.
4
+
5
+ ## Installation
6
+
7
+ $ gem install easy_keygen
8
+
9
+ ## Usage
10
+
11
+ Ruby:
12
+
13
+ ```ruby
14
+ require 'easy_keygen'
15
+
16
+ EasyKeygen.size_of_word
17
+ => 4
18
+
19
+ EasyKeygen.size_of_word(300)
20
+ => 300
21
+
22
+ ```
23
+
24
+ ### Command-Line Options
25
+
26
+ * -s, --size - Amount of word groups to generate
27
+ * -a, --ammount - Amount of letters per word group
28
+ * -i, --include - Specify to generate letters and / or numbers
29
+ * -h, --help - show help message
30
+
31
+ ## Todo
32
+ * Move optparse code into a EasyKeygen::CLI
33
+
34
+ ## Author
35
+ * [John C. Molina](http://www.pixelhipsters.com)
36
+
37
+ ## Contributing
38
+
39
+ 1. Fork it
40
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
41
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
42
+ 4. Push to the branch (`git push origin my-new-feature`)
43
+ 5. Create new Pull Request
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
@@ -0,0 +1,24 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'easy_keygen/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'easy_keygen'
8
+ spec.version = EasyKeygen::VERSION
9
+ spec.authors = ['John C. Molina']
10
+ spec.email = ['john@pixelhipsters.com']
11
+ spec.description = %q{Generate random numbers easily}
12
+ spec.summary = %q{Generate random numbers easily with Easy_Keygen}
13
+ spec.homepage = 'https://github.com/Alaude/easy_keygen'
14
+ spec.license = 'MIT'
15
+
16
+ spec.files = `git ls-files`.split($/)
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ['lib']
20
+
21
+ spec.add_development_dependency 'bundler', '~> 1.3'
22
+ spec.add_development_dependency 'rake'
23
+ spec.add_development_dependency 'rspec', '~> 2.14.1'
24
+ end
@@ -0,0 +1,64 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ ############## This part will be deleted ####################
4
+
5
+ # def generate_random_key arr
6
+ # _return_key = (1..16).map { arr[rand 35] }
7
+ # _return_key.join().scan(/.{4}/).join('-')
8
+ # end
9
+
10
+ # random_key = (0...36).map{|i|i.to_s 36}
11
+
12
+ # generate_random_key(random_key)
13
+
14
+ ##############################################################
15
+
16
+
17
+ require 'optparse'
18
+ require 'ostruct'
19
+ require 'easy_keygen/options'
20
+
21
+ module EasyKeygen
22
+
23
+ extend self
24
+
25
+ def size_of_word(size = ARG_OPTIONS[:size])
26
+ size
27
+ end
28
+
29
+ ARG_OPTIONS = {
30
+ :size => 4,
31
+ :amount => 4,
32
+ :_include => 'both',
33
+ :encryption => nil
34
+ }
35
+
36
+ optparse = OptionParser.new do |opts|
37
+
38
+ opts.banner = 'Usage: easy_key_gen.rb [ARG_OPTIONS]'
39
+
40
+ opts.on '-s', '--size size', 'Amount of word groups to generate.' do |size|
41
+ ARG_OPTIONS[:size] = size
42
+ end
43
+
44
+ opts.on '-a', '--amount amount', 'Amount of letters per word group.' do |amount|
45
+ ARG_OPTIONS[:amount] = amount
46
+ end
47
+
48
+ opts.on '-i', '--include include', 'Specify to generate letters and / or numbers.' do |_include|
49
+ ARG_OPTIONS[:_include] = _include
50
+ end
51
+
52
+ opts.on '-h', '--help', 'Show help information.' do
53
+ puts opts
54
+ exit
55
+ end
56
+
57
+ end
58
+
59
+ # Parse this mutha-fuckaaaa!
60
+ optparse.parse!
61
+
62
+ puts ARG_OPTIONS
63
+
64
+ end
File without changes
@@ -0,0 +1,3 @@
1
+ module EasyKeygen
2
+ VERSION = '0.0.1'
3
+ end
@@ -0,0 +1,26 @@
1
+ require 'spec_helper'
2
+
3
+ describe EasyKeygen do
4
+ let(:easy_keygen) { EasyKeygen }
5
+ it 'returns have a version number' do
6
+ EasyKeygen::VERSION.should_not be_nil
7
+ end
8
+
9
+ it 'returns false' do
10
+ false.should be_false
11
+ end
12
+
13
+ describe '#size_of_word' do
14
+ context 'when no arguments are provided' do
15
+ it 'returns a default of 4' do
16
+ expect(easy_keygen.size_of_word).to eq(4)
17
+ end
18
+ end
19
+
20
+ context 'when called with argument' do
21
+ it 'returns that number' do
22
+ expect(easy_keygen.size_of_word(30)).to eq(30)
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,7 @@
1
+ require 'easy_keygen'
2
+
3
+ RSpec.configure do |config|
4
+ config.treat_symbols_as_metadata_keys_with_true_values = true
5
+ config.run_all_when_everything_filtered = true
6
+ config.order = 'random'
7
+ end
metadata ADDED
@@ -0,0 +1,104 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: easy_keygen
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - John C. Molina
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-09-26 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: 2.14.1
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: 2.14.1
55
+ description: Generate random numbers easily
56
+ email:
57
+ - john@pixelhipsters.com
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - .gitignore
63
+ - .rspec
64
+ - .ruby-gemset
65
+ - .ruby-version
66
+ - .travis.yml
67
+ - Changelog.md
68
+ - Gemfile
69
+ - LICENSE
70
+ - README.md
71
+ - Rakefile
72
+ - easy_keygen.gemspec
73
+ - lib/easy_keygen.rb
74
+ - lib/easy_keygen/options.rb
75
+ - lib/easy_keygen/version.rb
76
+ - spec/easy_keygen_spec.rb
77
+ - spec/spec_helper.rb
78
+ homepage: https://github.com/Alaude/easy_keygen
79
+ licenses:
80
+ - MIT
81
+ metadata: {}
82
+ post_install_message:
83
+ rdoc_options: []
84
+ require_paths:
85
+ - lib
86
+ required_ruby_version: !ruby/object:Gem::Requirement
87
+ requirements:
88
+ - - '>='
89
+ - !ruby/object:Gem::Version
90
+ version: '0'
91
+ required_rubygems_version: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - '>='
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ requirements: []
97
+ rubyforge_project:
98
+ rubygems_version: 2.0.3
99
+ signing_key:
100
+ specification_version: 4
101
+ summary: Generate random numbers easily with Easy_Keygen
102
+ test_files:
103
+ - spec/easy_keygen_spec.rb
104
+ - spec/spec_helper.rb