minitest-naga 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,21 @@
1
+ module Minitest
2
+ class NagaReporter < Minitest::StatisticsReporter
3
+ def report
4
+ super
5
+ return unless options[:naga]
6
+ puts "=" *80
7
+ puts "Naga"
8
+ naga_api = NagaApi.new
9
+ detector = Detector.new(naga_api.credentials)
10
+ puts "=" *80
11
+ detector.my_first_time
12
+ detector.dressed_like_a_bat(count)
13
+ detector.a_trip_to_the_whizz_palace(total_time)
14
+ detector.papyrus(count, failures, errors)
15
+ detector.cant_catch_em_all(count, failures)
16
+ detector.why_do_we_fall(count, failures)
17
+ Game.new(naga_api.credentials, detector)
18
+ puts "=" *80
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,5 @@
1
+ module Minitest
2
+ module Naga
3
+ VERSION = "0.1.0"
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ require "minitest/naga/version"
2
+
3
+ module Minitest
4
+ module Naga
5
+ end
6
+ end
@@ -0,0 +1,19 @@
1
+ require "highline/import"
2
+ require "httparty"
3
+ require "colorize"
4
+ require "colorized_string"
5
+ require "uri"
6
+ Dir[File.join(__dir__, 'naga', '*.rb')].each {|file| require_relative file }
7
+ Dir[File.join(__dir__, 'game', '*.rb')].each {|file| require_relative file }
8
+
9
+ module Minitest
10
+ def self.plugin_naga_options(opts, options)
11
+ opts.on "--naga", "Run tests with Naga" do
12
+ options[:naga] = true
13
+ end
14
+ end
15
+
16
+ def self.plugin_naga_init(options)
17
+ Minitest.reporter << NagaReporter.new(options[:io], options)
18
+ end
19
+ end
@@ -0,0 +1,44 @@
1
+
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "minitest/naga/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "minitest-naga"
8
+ spec.version = Minitest::Naga::VERSION
9
+ spec.authors = ["Wen Ting Wang"]
10
+ spec.email = ["wtwang1@sheffield.ac.uk"]
11
+
12
+ spec.summary = %q{A minitest extension which lets you unlock achievements and collect loot when you run your test suite.}
13
+ spec.homepage = "https://github.com/wtwang1/minitest-naga"
14
+ spec.license = "MIT"
15
+
16
+ # Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
17
+ # to allow pushing to a single host or delete this section to allow pushing to any host.
18
+ # if spec.respond_to?(:metadata)
19
+ # spec.metadata["allowed_push_host"] = "TODO: Set to 'http://mygemserver.com'"
20
+ # else
21
+ # raise "RubyGems 2.0 or newer is required to protect against " \
22
+ # "public gem pushes."
23
+ # end
24
+
25
+ spec.files = `git ls-files -z`.split("\x0").reject do |f|
26
+ f.match(%r{^(test|spec|features)/})
27
+ end
28
+ spec.bindir = "exe"
29
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
+ spec.require_paths = ["lib"]
31
+
32
+ spec.add_development_dependency "bundler", "~> 1.16"
33
+ spec.add_development_dependency "rake", "~> 10.0"
34
+ spec.add_development_dependency "rspec", "~> 3.0"
35
+ spec.add_development_dependency "activesupport", "~> 4.2.0"
36
+ spec.add_development_dependency "cucumber"
37
+ spec.add_development_dependency "aruba"
38
+
39
+ spec.add_dependency "thor"
40
+ spec.add_dependency "minitest"
41
+ spec.add_dependency "httparty"
42
+ spec.add_dependency "highline"
43
+ spec.add_dependency "colorize"
44
+ end
metadata ADDED
@@ -0,0 +1,228 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: minitest-naga
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Wen Ting Wang
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2018-04-15 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.16'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.16'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.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: '3.0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: activesupport
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 4.2.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 4.2.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: cucumber
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: aruba
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
98
+ name: thor
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: minitest
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: httparty
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: highline
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: colorize
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
167
+ description:
168
+ email:
169
+ - wtwang1@sheffield.ac.uk
170
+ executables:
171
+ - minitest-naga
172
+ extensions: []
173
+ extra_rdoc_files: []
174
+ files:
175
+ - ".gitignore"
176
+ - ".rspec"
177
+ - ".travis.yml"
178
+ - CHANGELOG.md
179
+ - CODE_OF_CONDUCT.md
180
+ - Gemfile
181
+ - Gemfile.lock
182
+ - LICENSE.txt
183
+ - README.md
184
+ - Rakefile
185
+ - bin/console
186
+ - bin/setup
187
+ - exe/minitest-naga
188
+ - helpers/test_helper.rb
189
+ - lib/minitest/game/game.rb
190
+ - lib/minitest/game/inventory.rb
191
+ - lib/minitest/game/item.rb
192
+ - lib/minitest/game/location.rb
193
+ - lib/minitest/game/place.rb
194
+ - lib/minitest/naga.rb
195
+ - lib/minitest/naga/achievement.rb
196
+ - lib/minitest/naga/cli.rb
197
+ - lib/minitest/naga/detector.rb
198
+ - lib/minitest/naga/naga_api.rb
199
+ - lib/minitest/naga/naga_reporter.rb
200
+ - lib/minitest/naga/version.rb
201
+ - lib/minitest/naga_plugin.rb
202
+ - minitest-naga.gemspec
203
+ homepage: https://github.com/wtwang1/minitest-naga
204
+ licenses:
205
+ - MIT
206
+ metadata: {}
207
+ post_install_message:
208
+ rdoc_options: []
209
+ require_paths:
210
+ - lib
211
+ required_ruby_version: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ required_rubygems_version: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - ">="
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
221
+ requirements: []
222
+ rubyforge_project:
223
+ rubygems_version: 2.6.14
224
+ signing_key:
225
+ specification_version: 4
226
+ summary: A minitest extension which lets you unlock achievements and collect loot
227
+ when you run your test suite.
228
+ test_files: []