randomua 1.0.0 → 1.1.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
- SHA1:
3
- metadata.gz: 4df06ae49f15dc0a688e14faf5df7e48236ebb9d
4
- data.tar.gz: 364ef8bea81ac8e7db8c6287652a34c610cda57c
2
+ SHA256:
3
+ metadata.gz: c151f971742c66626e660a42be775e6de30542a56006ceaf50b134ba01aa526e
4
+ data.tar.gz: 0b3b46d894b7acd25e1bdea3684e3fae85643d4b462399062a180dc2c662346c
5
5
  SHA512:
6
- metadata.gz: 6be17a27915430e94906429e1bea34131d4c63ab1496d2bcf6d90f3bf3d0a0524690e3ebcce7b814193d4fcd10afb2e34d2e0ea7b7cb217570f19c1918cb5065
7
- data.tar.gz: 5051a6435ad5847fb2e2817d3f7a1ec22299bf4f1666871339051576142b3c2f403199e269ee48b6248442253c753c7d0fdc943ccc73b4995e8483751ae755c4
6
+ metadata.gz: af06adb35beeb1d5f9b06776f8e05761e77ce8b5e709ddb636fd6d925aa90e3e96561d44bc76c1261d4cc9b131a32509c53b922210b6c316d4ec0551562686bc
7
+ data.tar.gz: 65933136d8ba38e889c803d63d9e2f8b453f7c7f5742efce9a355091e2ba8f4e4b73fdbcc6c0e6d8e1899c259a2f64ac2ae32815d2ef36f7a23e0dd0e279b76f
data/.gitignore CHANGED
@@ -7,3 +7,4 @@
7
7
  /pkg/
8
8
  /spec/reports/
9
9
  /tmp/
10
+ *.gem
data/README.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # Randomua
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/randomua.svg)](https://rubygems.org/gems/randomua)
4
+ [![GitHub license](https://img.shields.io/github/license/picatz/randomua)](https://github.com/picatz/randomua/blob/master/LICENSE.txt)
5
+
3
6
  ![random_panda](http://i.imgur.com/cdoYV6s.jpg)
4
7
 
5
8
  A command-line application to generate random user agent strings. Acting as a command-line interface to the [user-agent-randomizer](https://github.com/asconix/user-agent-randomizer) gem without the need to do any ruby programming.
@@ -10,7 +13,25 @@ A command-line application to generate random user agent strings. Acting as a co
10
13
 
11
14
  ## Usage
12
15
 
13
- TODO: Write usage instructions here
16
+ ```
17
+ $ randomua -h
18
+ random user agent | Generate a random user agent string.
19
+ -c, --crawler Gereate a random crawler user agent string
20
+ -d, --desktop-browser Gereate a random desktop browser user agent string
21
+ -m, --mobile-browser Gereate a random mobile browser user agent string
22
+ -o, --console Gereate a random console user agent string
23
+ -f, --offline-browser Gereate a random offline browser user agent string
24
+ -e, --email-client Gereate a random email client user agent string
25
+ -l, --link-checker Gereate a random link checker user agent string
26
+ -a, --email-collector Gereate a random email collector user agent string
27
+ -v, --validator Gereate a random validator user agent string
28
+ -r, --feed-reader Gereate a random feed reader user agent string
29
+ -i, --library Gereate a random library user agent string
30
+ -u, --cloud-platform Gereate a random cloud platform user agent string
31
+ -t, --other Gereate a random other user agent string
32
+ -s, --version Print version and exit
33
+ -h, --help Show this message
34
+ ```
14
35
 
15
36
  ## License
16
37
 
data/Rakefile CHANGED
@@ -1,6 +1 @@
1
- require "bundler/gem_tasks"
2
- require "rspec/core/rake_task"
3
-
4
- RSpec::Core::RakeTask.new(:spec)
5
-
6
- task :default => :spec
1
+ require "bundler/gem_tasks"
@@ -1,14 +1,14 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require "bundler/setup"
4
- require "randomua"
3
+ require 'bundler/setup'
4
+ require 'randomua'
5
5
 
6
6
  # You can add fixtures and/or initialization code here to make experimenting
7
7
  # with your gem easier. You can also use a different console, if you like.
8
8
 
9
9
  # (If you use this, don't forget to add pry to your Gemfile!)
10
- # require "pry"
10
+ # require 'pry'
11
11
  # Pry.start
12
12
 
13
- require "irb"
13
+ require 'irb'
14
14
  IRB.start
@@ -1,4 +1,60 @@
1
1
  #!/usr/bin/env ruby
2
+
2
3
  require 'randomua'
4
+ require 'docopt'
5
+
6
+ doc = <<~DOCOPT
7
+ randomua (random user agent) | Generate a random user agent string.
8
+
9
+ Usage:
10
+ randomua [options]
11
+ randomua -h | --help
12
+ randomua --version
13
+
14
+ Options:
15
+ -c, --crawler Gereate a random crawler user agent string
16
+ -d, --desktop-browser Gereate a random desktop browser user agent string
17
+ -m, --mobile-browser Gereate a random mobile browser user agent string
18
+ -o, --console Gereate a random console user agent string
19
+ -f, --offline-browser Gereate a random offline browser user agent string
20
+ -e, --email-client Gereate a random email client user agent string
21
+ -l, --link-checker Gereate a random link checker user agent string
22
+ -a, --email-collector Gereate a random email collector user agent string
23
+ -v, --validator Gereate a random validator user agent string
24
+ -r, --feed-reader Gereate a random feed reader user agent string
25
+ -i, --library Gereate a random library user agent string
26
+ -u, --cloud-platform Gereate a random cloud platform user agent string
27
+ -t, --other Gereate a random other user agent string
28
+ -s, --version Print version and exit
29
+ -h, --help Show this message
30
+
31
+ Examples:
32
+ randomua -d
33
+ DOCOPT
3
34
 
4
- Randomua.run_application!
35
+ begin
36
+ args = Docopt.docopt(doc, version: Randomua::VERSION)
37
+ # use case 1, using the tool
38
+ if args.empty?
39
+ puts UserAgentRandomizer::UserAgent.fetch.string
40
+ else
41
+ type = 'crawler' if args['--crawler']
42
+ type = 'desktop_browser' if args['--desktop-browser']
43
+ type = 'mobile_browser' if args['--mobile-browser']
44
+ type = 'console' if args['--console']
45
+ type = 'offline_browser' if args['--offline-browser']
46
+ type = 'email_client' if args['--email-client']
47
+ type = 'link_checker' if args['--link-checker']
48
+ type = 'email_collector' if args['--email-collector']
49
+ type = 'validator' if args['--validator']
50
+ type = 'feed_reader' if args['--feed-reader']
51
+ type = 'library' if args['--library']
52
+ type = 'cloud_platform' if args['--cloud-platform']
53
+ type = 'other' if args['--other']
54
+ puts UserAgentRandomizer::UserAgent.fetch(type: type).string
55
+ end
56
+ # use case 2, help: already handled by docopt
57
+ # use case 3, version: already handled by docopt
58
+ rescue Docopt::Exit => e
59
+ puts e.message
60
+ end
@@ -1,53 +1,5 @@
1
- require 'trollop'
2
- require 'colorize'
3
1
  require 'user_agent_randomizer'
4
2
 
5
3
  module Randomua
6
-
7
- VERSION = "1.0.0"
8
-
9
- def self.run_application!
10
- # Default to a help menu
11
- foo = ARGV[0] || ARGV[0] = '-h'
12
-
13
- opts = Trollop::options do
14
- banner "random user agent".blue.red + " | " + "Generate a random user agent string.".bold
15
- version "#{Randomua::VERSION}"
16
- opt :crawler, "Gereate a random crawler user agent string"
17
- opt :desktop_browser, "Gereate a random desktop browser user agent string"
18
- opt :mobile_browser, "Gereate a random mobile browser user agent string"
19
- opt :console, "Gereate a random console user agent string"
20
- opt :offline_browser, "Gereate a random offline browser user agent string"
21
- opt :email_client, "Gereate a random email client user agent string"
22
- opt :link_checker, "Gereate a random link checker user agent string"
23
- opt :email_collector, "Gereate a random email collector user agent string"
24
- opt :validator, "Gereate a random validator user agent string"
25
- opt :feed_reader, "Gereate a random feed reader user agent string"
26
- opt :library, "Gereate a random library user agent string"
27
- opt :cloud_platform, "Gereate a random cloud platform user agent string"
28
- opt :other, "Gereate a random other user agent string"
29
- end
30
-
31
- # check for a filter
32
- filter = Hash[opts.keys.keep_if { |k| k.to_s =~ /_given\b/ } .collect { |i| [i, true] } ]
33
-
34
- unless filter.empty?
35
- return puts UserAgentRandomizer::UserAgent.fetch(type: "crawler").string if opts.crawler
36
- return puts UserAgentRandomizer::UserAgent.fetch(type: "desktop_browser").string if opts.desktop_browser
37
- return puts UserAgentRandomizer::UserAgent.fetch(type: "mobile_browser").string if opts.mobile_browser
38
- return puts UserAgentRandomizer::UserAgent.fetch(type: "console").string if opts.console
39
- return puts UserAgentRandomizer::UserAgent.fetch(type: "offline_browser").string if opts.offline_browser
40
- return puts UserAgentRandomizer::UserAgent.fetch(type: "email_client").string if opts.email_client
41
- return puts UserAgentRandomizer::UserAgent.fetch(type: "link_checker").string if opts.link_checker
42
- return puts UserAgentRandomizer::UserAgent.fetch(type: "email_collector").string if opts.email_collector
43
- return puts UserAgentRandomizer::UserAgent.fetch(type: "validator").string if opts.validator
44
- return puts UserAgentRandomizer::UserAgent.fetch(type: "feed_reader").string if opts.feed_reader
45
- return puts UserAgentRandomizer::UserAgent.fetch(type: "library").string if opts.library
46
- return puts UserAgentRandomizer::UserAgent.fetch(type: "cloud_platform").string if opts.cloud_platform
47
- return puts UserAgentRandomizer::UserAgent.fetch(type: "other").string if opts.other
48
- else
49
- puts UserAgentRandomizer::UserAgent.fetch.string
50
- end
51
- end
52
-
4
+ VERSION = '1.1.0'
53
5
  end
@@ -1,29 +1,26 @@
1
- # coding: utf-8
2
1
  lib = File.expand_path('../lib', __FILE__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'randomua'
5
4
 
6
5
  Gem::Specification.new do |spec|
7
- spec.name = "randomua"
6
+ spec.name = 'randomua'
8
7
  spec.version = Randomua::VERSION
9
- spec.authors = ["Kent Gruber"]
10
- spec.email = ["kgruber1@emich.edu"]
8
+ spec.authors = ['Kent Gruber', 'Alexandre ZANNI']
9
+ spec.email = ['kgruber1@emich.edu', 'alexandre.zanni@europe.com']
11
10
 
12
11
  spec.summary = %q{A command-line application to generate random user agent strings.}
13
12
  spec.description = %q{A command-line application to generate random user agent strings. Acting as a command-line interface to the user-agent-randomizer gem without the need to do any ruby programming.}
14
- spec.homepage = "https://github.com/picatz/randomua"
15
- spec.license = "MIT"
13
+ spec.homepage = 'https://github.com/picatz/randomua'
14
+ spec.license = 'MIT'
16
15
 
17
16
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
18
- spec.bindir = "bin"
19
- spec.executable = "randomua"
20
- spec.require_paths = ["lib"]
17
+ spec.bindir = 'bin'
18
+ spec.executable = 'randomua'
19
+ spec.require_paths = ['lib']
21
20
 
22
- spec.add_dependency "trollop"
23
- spec.add_dependency "colorize"
24
- spec.add_dependency "user-agent-randomizer"
21
+ spec.add_dependency 'docopt', '~> 0.6'
22
+ spec.add_dependency 'user-agent-randomizer', '~> 0.2'
25
23
 
26
- spec.add_development_dependency "bundler", "~> 1.13"
27
- spec.add_development_dependency "rake", "~> 10.0"
28
- spec.add_development_dependency "rspec", "~> 3.0"
24
+ spec.add_development_dependency 'bundler', '~> 2.1'
25
+ spec.add_development_dependency 'rake', '~> 10.0'
29
26
  end
metadata CHANGED
@@ -1,71 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: randomua
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kent Gruber
8
+ - Alexandre ZANNI
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2016-11-20 00:00:00.000000000 Z
12
+ date: 2020-03-20 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
- name: trollop
15
+ name: docopt
15
16
  requirement: !ruby/object:Gem::Requirement
16
17
  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: colorize
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
18
+ - - "~>"
32
19
  - !ruby/object:Gem::Version
33
- version: '0'
20
+ version: '0.6'
34
21
  type: :runtime
35
22
  prerelease: false
36
23
  version_requirements: !ruby/object:Gem::Requirement
37
24
  requirements:
38
- - - ">="
25
+ - - "~>"
39
26
  - !ruby/object:Gem::Version
40
- version: '0'
27
+ version: '0.6'
41
28
  - !ruby/object:Gem::Dependency
42
29
  name: user-agent-randomizer
43
30
  requirement: !ruby/object:Gem::Requirement
44
31
  requirements:
45
- - - ">="
32
+ - - "~>"
46
33
  - !ruby/object:Gem::Version
47
- version: '0'
34
+ version: '0.2'
48
35
  type: :runtime
49
36
  prerelease: false
50
37
  version_requirements: !ruby/object:Gem::Requirement
51
38
  requirements:
52
- - - ">="
39
+ - - "~>"
53
40
  - !ruby/object:Gem::Version
54
- version: '0'
41
+ version: '0.2'
55
42
  - !ruby/object:Gem::Dependency
56
43
  name: bundler
57
44
  requirement: !ruby/object:Gem::Requirement
58
45
  requirements:
59
46
  - - "~>"
60
47
  - !ruby/object:Gem::Version
61
- version: '1.13'
48
+ version: '2.1'
62
49
  type: :development
63
50
  prerelease: false
64
51
  version_requirements: !ruby/object:Gem::Requirement
65
52
  requirements:
66
53
  - - "~>"
67
54
  - !ruby/object:Gem::Version
68
- version: '1.13'
55
+ version: '2.1'
69
56
  - !ruby/object:Gem::Dependency
70
57
  name: rake
71
58
  requirement: !ruby/object:Gem::Requirement
@@ -80,32 +67,18 @@ dependencies:
80
67
  - - "~>"
81
68
  - !ruby/object:Gem::Version
82
69
  version: '10.0'
83
- - !ruby/object:Gem::Dependency
84
- name: rspec
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '3.0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '3.0'
97
70
  description: A command-line application to generate random user agent strings. Acting
98
71
  as a command-line interface to the user-agent-randomizer gem without the need to
99
72
  do any ruby programming.
100
73
  email:
101
74
  - kgruber1@emich.edu
75
+ - alexandre.zanni@europe.com
102
76
  executables:
103
77
  - randomua
104
78
  extensions: []
105
79
  extra_rdoc_files: []
106
80
  files:
107
81
  - ".gitignore"
108
- - ".rspec"
109
82
  - ".travis.yml"
110
83
  - CODE_OF_CONDUCT.md
111
84
  - Gemfile
@@ -136,8 +109,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
136
109
  - !ruby/object:Gem::Version
137
110
  version: '0'
138
111
  requirements: []
139
- rubyforge_project:
140
- rubygems_version: 2.5.2
112
+ rubygems_version: 3.0.6
141
113
  signing_key:
142
114
  specification_version: 4
143
115
  summary: A command-line application to generate random user agent strings.
data/.rspec DELETED
@@ -1,2 +0,0 @@
1
- --format documentation
2
- --color