trick_or_treat 0.2.2 → 0.2.3

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
  SHA256:
3
- metadata.gz: 9de7f7828993e34f5b491e945a97d199d92264371ab74623c0f684963911696a
4
- data.tar.gz: 1456ecb5bde4776daf6a6e5e523f2195e006c4c292ebf4ad8b50d45262925b1f
3
+ metadata.gz: b086303f9ddda9ec7bd665ed58f276fdd3d792d2c0b3379cbb909d9450a2e439
4
+ data.tar.gz: 4f6a191c2f6680d7dd6100093b13e7b71a20b1c56da8cd731e381a8ff1dc685b
5
5
  SHA512:
6
- metadata.gz: 11f42f239b24190e45a925b10932ab64987605fcba5021b8f773ee5627c757bfb1b2d61501c3fb12c214b2458a6cbc2375e5f3ff0df1f2523939287e379ea544
7
- data.tar.gz: bc0365e1f975c9bc228fd214e4b56224a80d8c35338797205a0c028aa8aefe9274319cbe6dc876de3d295400c03c1f44a115cab1a1a535b66b2f3c315a2b3b26
6
+ metadata.gz: 75c938c6c74b774da7fa89bc947d47d11416d2d194b6721c53227e5cbf1cbf42bd8e915ab6f1d8aa01efcbba810a67f3ab6814139f85cc0446d506cf5b5ba456
7
+ data.tar.gz: a075ed61bf7d6df01e105aa7050ebe6c28fecdeb132905d7176639976f37631597f45e6dd213ca8d236fc67fda43093c392d39dac12f86fb8cec32570d173cca
data/Gemfile CHANGED
@@ -2,7 +2,3 @@ source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in trick_or_treat.gemspec
4
4
  gemspec
5
-
6
- gem "rake", "~> 10.0"
7
- gem "safe_yaml", "~> 1.0.5"
8
- gem "nokogiri", "~> 1.10.4"
data/Gemfile.lock CHANGED
@@ -1,7 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- trick_or_treat (0.2.1)
4
+ trick_or_treat (0.2.3)
5
+ nokogiri (~> 1.10.4)
6
+ rake (~> 10.0)
7
+ safe_yaml (~> 1.0.5)
5
8
 
6
9
  GEM
7
10
  remote: https://rubygems.org/
@@ -11,7 +14,7 @@ GEM
11
14
  byebug (11.0.1)
12
15
  mini_portile2 (2.4.0)
13
16
  minitest (5.12.2)
14
- minitest-reporters (1.3.8)
17
+ minitest-reporters (1.4.1)
15
18
  ansi
16
19
  builder
17
20
  minitest (>= 5.0)
@@ -26,13 +29,10 @@ PLATFORMS
26
29
  ruby
27
30
 
28
31
  DEPENDENCIES
29
- bundler (~> 2.0)
30
- byebug (~> 11.0.1)
31
- minitest (~> 5.12.0)
32
- minitest-reporters (~> 1.3.8)
33
- nokogiri (~> 1.10.4)
34
- rake (~> 10.0)
35
- safe_yaml (~> 1.0.5)
32
+ bundler
33
+ byebug
34
+ minitest
35
+ minitest-reporters
36
36
  trick_or_treat!
37
37
 
38
38
  BUNDLED WITH
data/Rakefile CHANGED
@@ -1,10 +1,13 @@
1
- require "bundler/gem_tasks"
2
- require "rake/testtask"
1
+ require 'bundler/gem_tasks'
2
+ require 'rake/testtask'
3
+ require 'rake/clean'
4
+
5
+ CLEAN.include ['**/.*.sw?', '*.gem', 'test/test.log']
6
+
7
+ task :default => [:test, :package]
8
+ task :package => [:clean]
3
9
 
4
10
  Rake::TestTask.new(:test) do |t|
5
- t.libs << "test"
6
- t.libs << "lib"
11
+ t.libs << 'lib' << 'test'
7
12
  t.test_files = FileList["test/**/*_test.rb"]
8
13
  end
9
-
10
- task :default => :test
@@ -9,8 +9,12 @@ module TrickOrTreat
9
9
 
10
10
  extend self
11
11
 
12
+ attr_accessor :uri, :treat_file
13
+
14
+ @uri='https://sergioro.mx'
15
+ @treat_file='quotes.yml'
16
+
12
17
  def ask(args=[])
13
- @uri='https://sergioro.mx'
14
18
  printf "\e[1;38;05;202mTrick or Treat? "
15
19
  no_candy if Gem.win_platform?
16
20
  return trick if args.delete('trick')
@@ -18,9 +22,8 @@ module TrickOrTreat
18
22
  no_candy
19
23
  end
20
24
 
21
- # ensure returned object to be a Tempfile
22
- def download_to_file(uri, headers={})
23
- stream = open(uri, "rb", headers)
25
+ def tempfile(headers={})
26
+ stream = open([uri,treat_file].join('/'), "rb", headers)
24
27
  return stream if stream.respond_to?(:path)
25
28
 
26
29
  Tempfile.new.tap do |file|
@@ -32,7 +35,7 @@ module TrickOrTreat
32
35
  end
33
36
 
34
37
  def get_links
35
- nodes=Nokogiri::HTML(open(@uri)).css('a')
38
+ nodes=Nokogiri::HTML(open(uri)).css('a')
36
39
  nodes.map{|n| n['href'] if n.attributes['class'].value.match /trick/i}.compact
37
40
  end
38
41
 
@@ -40,7 +43,7 @@ module TrickOrTreat
40
43
  puts "\e[1;38;05;165mTrick\e[0m"
41
44
  links=get_links
42
45
  link=links.sample
43
- f=open([@uri,link].join('/'))
46
+ f=open([uri,link].join('/'))
44
47
  html=Nokogiri::HTML(f)
45
48
  puts title=html.css('h1').text.gsub(/ +|\n/, '')
46
49
  content=html.css('.post-content')
@@ -51,10 +54,9 @@ module TrickOrTreat
51
54
 
52
55
  def treat
53
56
  printf "\e[1;38;05;165mTreat\e[0m\n"
54
- @treat='quotes.yml'
55
57
  headers={}
56
58
  headers={'user-agent' => 'treat'}
57
- treats=YAML.load_file(download_to_file([@uri,@treat].join('/'), headers))
59
+ treats=YAML.load_file(tempfile(headers))
58
60
  treats[treats.keys.sample].values.sample
59
61
  rescue OpenURI::HTTPError => e
60
62
  response=e.io
@@ -1,3 +1,3 @@
1
1
  module TrickOrTreat
2
- VERSION = "0.2.2"
2
+ VERSION = "0.2.3"
3
3
  end
@@ -3,29 +3,33 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
3
  require "trick_or_treat/version"
4
4
 
5
5
  Gem::Specification.new do |spec|
6
- spec.name = "trick_or_treat"
6
+ spec.name = 'trick_or_treat'
7
7
  spec.version = TrickOrTreat::VERSION
8
- spec.authors = ["Sergio Romero"]
9
- spec.email = ["sergioro@nmsu.edu"]
8
+ spec.authors = ['Sergio Romero']
9
+ spec.email = ['sergioro@nmsu.edu']
10
10
 
11
11
  spec.summary = %q{Trick or treat}
12
12
  spec.description = %q{Happy Hackoween}
13
- spec.homepage = "https://github.com/sergioro9/trick_or_treat"
14
- spec.license = "MIT"
13
+ spec.homepage = 'https://github.com/sergioro9/trick_or_treat'
14
+ spec.license = 'MIT'
15
15
 
16
- spec.metadata["homepage_uri"] = spec.homepage
16
+ spec.metadata['homepage_uri'] = spec.homepage
17
17
 
18
18
  # Specify which files should be added to the gem when it is released.
19
19
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
20
20
  spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
21
21
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
22
22
  end
23
- spec.bindir = "exe"
23
+ spec.bindir = 'exe'
24
24
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
- spec.require_paths = ["lib"]
25
+ spec.require_paths = ['lib']
26
26
 
27
- spec.add_development_dependency "bundler", "~> 2.0"
28
- spec.add_development_dependency "minitest", "~> 5.12.0"
29
- spec.add_development_dependency "minitest-reporters", "~> 1.3.8"
30
- spec.add_development_dependency "byebug", "~> 11.0.1"
27
+ spec.add_development_dependency 'bundler'
28
+ spec.add_development_dependency 'minitest'
29
+ spec.add_development_dependency 'minitest-reporters'
30
+ spec.add_development_dependency 'byebug'
31
+
32
+ spec.add_runtime_dependency 'rake', '~> 10.0'
33
+ spec.add_runtime_dependency 'safe_yaml', '~> 1.0.5'
34
+ spec.add_runtime_dependency 'nokogiri', '~> 1.10.4'
31
35
  end
metadata CHANGED
@@ -1,71 +1,113 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: trick_or_treat
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sergio Romero
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-10-14 00:00:00.000000000 Z
11
+ date: 2019-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '2.0'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '2.0'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: minitest
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 5.12.0
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 5.12.0
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: minitest-reporters
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 1.3.8
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 1.3.8
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: byebug
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
- version: 11.0.1
61
+ version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '10.0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '10.0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: safe_yaml
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 1.0.5
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 1.0.5
97
+ - !ruby/object:Gem::Dependency
98
+ name: nokogiri
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 1.10.4
104
+ type: :runtime
105
+ prerelease: false
64
106
  version_requirements: !ruby/object:Gem::Requirement
65
107
  requirements:
66
108
  - - "~>"
67
109
  - !ruby/object:Gem::Version
68
- version: 11.0.1
110
+ version: 1.10.4
69
111
  description: Happy Hackoween
70
112
  email:
71
113
  - sergioro@nmsu.edu
@@ -111,7 +153,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
111
153
  - !ruby/object:Gem::Version
112
154
  version: '0'
113
155
  requirements: []
114
- rubygems_version: 3.0.3
156
+ rubygems_version: 3.0.6
115
157
  signing_key:
116
158
  specification_version: 4
117
159
  summary: Trick or treat