exercism 0.0.12 → 0.0.13

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.
data/exercism.gemspec CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = ["katrina.owen@gmail.com"]
11
11
  spec.description = %q{Client gem for the exercism.io app}
12
12
  spec.summary = %q{This gem provides a command line client to allow users of the exercism.io application to easily fetch and submit assignments.}
13
- spec.homepage = ""
13
+ spec.homepage = "https://github.com/kytrinyx/exercism"
14
14
  spec.license = "MIT"
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
@@ -25,5 +25,5 @@ Gem::Specification.new do |spec|
25
25
  spec.add_development_dependency "vcr", '~> 2.4'
26
26
  spec.add_development_dependency "fakeweb"
27
27
  spec.add_development_dependency "approvals"
28
- spec.add_development_dependency "minitest", '~> 4.7'
28
+ spec.add_development_dependency "minitest", '~> 5.0'
29
29
  end
data/lib/cli.rb CHANGED
@@ -3,6 +3,15 @@ require 'thor'
3
3
  class Exercism
4
4
  class CLI < Thor
5
5
 
6
+ desc "version", "Output current version of gem"
7
+ def version
8
+ require 'exercism'
9
+
10
+ puts Exercism::VERSION
11
+ end
12
+
13
+ map "-v" => "version", "--version" => "version"
14
+
6
15
  desc "fetch", "Fetch current assignment from exercism.io"
7
16
  method_option :host, aliases: '-h', default: 'http://exercism.io', desc: 'the url of the exercism application'
8
17
  def fetch
@@ -2,11 +2,9 @@ class Exercism
2
2
  class Assignment
3
3
 
4
4
  def self.save(data, path)
5
- assignments = []
6
- data['assignments'].each do |attributes|
7
- assignments << Assignment.new(attributes.merge('project_dir' => path)).save
5
+ data['assignments'].map do |attributes|
6
+ Assignment.new(attributes.merge('project_dir' => path)).save
8
7
  end
9
- assignments
10
8
  end
11
9
 
12
10
  attr_reader :track, :slug, :readme, :test_file, :tests, :project_dir
@@ -1,3 +1,3 @@
1
1
  class Exercism
2
- VERSION = "0.0.12"
2
+ VERSION = "0.0.13"
3
3
  end
@@ -14,7 +14,7 @@ Approvals.configure do |c|
14
14
  c.approvals_path = File.join(test_dir, 'approvals') + '/'
15
15
  end
16
16
 
17
- class ApiTest < MiniTest::Unit::TestCase
17
+ class ApiTest < Minitest::Test
18
18
 
19
19
  def project_dir
20
20
  '/tmp'
@@ -1,6 +1,6 @@
1
1
  require './test/test_helper'
2
2
 
3
- class AssignmentTest < MiniTest::Unit::TestCase
3
+ class AssignmentTest < Minitest::Test
4
4
 
5
5
  def project_dir
6
6
  '/tmp'
@@ -19,7 +19,7 @@ class AssignmentTest < MiniTest::Unit::TestCase
19
19
  end
20
20
 
21
21
  def tests_path
22
- File.join(tests_dir, 'test.rb')
22
+ File.join(tests_dir, 'queens_test.rb')
23
23
  end
24
24
 
25
25
  def assignment_data
@@ -27,7 +27,7 @@ class AssignmentTest < MiniTest::Unit::TestCase
27
27
  'track' => 'ruby',
28
28
  'slug' => 'queens',
29
29
  'readme' => 'Do it',
30
- 'test_file' => 'test.rb',
30
+ 'test_file' => 'queens_test.rb',
31
31
  'tests' => 'assert true',
32
32
  'project_dir' => project_dir
33
33
  }
@@ -52,5 +52,13 @@ class AssignmentTest < MiniTest::Unit::TestCase
52
52
 
53
53
  assert_equal "assert false", File.read(tests_path)
54
54
  end
55
+
56
+ def test_save_and_return_assignments
57
+ data = { 'assignments' => [ assignment_data ] }
58
+ saved = Exercism::Assignment.save(data, project_dir)
59
+
60
+ assert_equal 1, saved.size
61
+ assert_equal assignment_data['slug'], saved.first.slug
62
+ end
55
63
  end
56
64
 
@@ -1,6 +1,6 @@
1
1
  require './test/test_helper'
2
2
 
3
- class ConfigTest < MiniTest::Unit::TestCase
3
+ class ConfigTest < Minitest::Test
4
4
 
5
5
  def path
6
6
  './test/fixtures'
@@ -1,6 +1,6 @@
1
1
  require './test/test_helper'
2
2
 
3
- class ExercismTest < MiniTest::Unit::TestCase
3
+ class ExercismTest < Minitest::Test
4
4
 
5
5
  def teardown
6
6
  if File.exists?('./test/fixtures/.exercism')
data/test/test_helper.rb CHANGED
@@ -3,7 +3,7 @@ $:.unshift File.expand_path("../../test", __FILE__)
3
3
 
4
4
  ENV['EXERCISM_ENV'] = 'test'
5
5
 
6
- require 'minitest/autorun'
6
+ gem 'minitest'; require 'minitest/autorun'
7
7
  require 'minitest/pride'
8
8
 
9
9
  require 'exercism'
metadata CHANGED
@@ -1,18 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: exercism
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.13
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Katrina Owen
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-06-21 00:00:00.000000000 Z
12
+ date: 2013-06-24 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: faraday
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ! '>='
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ! '>='
25
28
  - !ruby/object:Gem::Version
@@ -27,6 +30,7 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: thor
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - ! '>='
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - ! '>='
39
44
  - !ruby/object:Gem::Version
@@ -41,6 +46,7 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: bundler
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - ~>
46
52
  - !ruby/object:Gem::Version
@@ -48,6 +54,7 @@ dependencies:
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - ~>
53
60
  - !ruby/object:Gem::Version
@@ -55,6 +62,7 @@ dependencies:
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: rake
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
67
  - - ! '>='
60
68
  - !ruby/object:Gem::Version
@@ -62,6 +70,7 @@ dependencies:
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
75
  - - ! '>='
67
76
  - !ruby/object:Gem::Version
@@ -69,6 +78,7 @@ dependencies:
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: vcr
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
83
  - - ~>
74
84
  - !ruby/object:Gem::Version
@@ -76,6 +86,7 @@ dependencies:
76
86
  type: :development
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
91
  - - ~>
81
92
  - !ruby/object:Gem::Version
@@ -83,6 +94,7 @@ dependencies:
83
94
  - !ruby/object:Gem::Dependency
84
95
  name: fakeweb
85
96
  requirement: !ruby/object:Gem::Requirement
97
+ none: false
86
98
  requirements:
87
99
  - - ! '>='
88
100
  - !ruby/object:Gem::Version
@@ -90,6 +102,7 @@ dependencies:
90
102
  type: :development
91
103
  prerelease: false
92
104
  version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
93
106
  requirements:
94
107
  - - ! '>='
95
108
  - !ruby/object:Gem::Version
@@ -97,6 +110,7 @@ dependencies:
97
110
  - !ruby/object:Gem::Dependency
98
111
  name: approvals
99
112
  requirement: !ruby/object:Gem::Requirement
113
+ none: false
100
114
  requirements:
101
115
  - - ! '>='
102
116
  - !ruby/object:Gem::Version
@@ -104,6 +118,7 @@ dependencies:
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
107
122
  requirements:
108
123
  - - ! '>='
109
124
  - !ruby/object:Gem::Version
@@ -111,17 +126,19 @@ dependencies:
111
126
  - !ruby/object:Gem::Dependency
112
127
  name: minitest
113
128
  requirement: !ruby/object:Gem::Requirement
129
+ none: false
114
130
  requirements:
115
131
  - - ~>
116
132
  - !ruby/object:Gem::Version
117
- version: '4.7'
133
+ version: '5.0'
118
134
  type: :development
119
135
  prerelease: false
120
136
  version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
121
138
  requirements:
122
139
  - - ~>
123
140
  - !ruby/object:Gem::Version
124
- version: '4.7'
141
+ version: '5.0'
125
142
  description: Client gem for the exercism.io app
126
143
  email:
127
144
  - katrina.owen@gmail.com
@@ -158,29 +175,30 @@ files:
158
175
  - test/fixtures/vcr_cassettes/alice-gets-word-count.yml
159
176
  - test/fixtures/vcr_cassettes/alice-submits-bob.yml
160
177
  - test/test_helper.rb
161
- homepage: ''
178
+ homepage: https://github.com/kytrinyx/exercism
162
179
  licenses:
163
180
  - MIT
164
- metadata: {}
165
181
  post_install_message:
166
182
  rdoc_options: []
167
183
  require_paths:
168
184
  - lib
169
185
  required_ruby_version: !ruby/object:Gem::Requirement
186
+ none: false
170
187
  requirements:
171
188
  - - ! '>='
172
189
  - !ruby/object:Gem::Version
173
190
  version: '0'
174
191
  required_rubygems_version: !ruby/object:Gem::Requirement
192
+ none: false
175
193
  requirements:
176
194
  - - ! '>='
177
195
  - !ruby/object:Gem::Version
178
196
  version: '0'
179
197
  requirements: []
180
198
  rubyforge_project:
181
- rubygems_version: 2.0.3
199
+ rubygems_version: 1.8.23
182
200
  signing_key:
183
- specification_version: 4
201
+ specification_version: 3
184
202
  summary: This gem provides a command line client to allow users of the exercism.io
185
203
  application to easily fetch and submit assignments.
186
204
  test_files:
@@ -197,4 +215,3 @@ test_files:
197
215
  - test/fixtures/vcr_cassettes/alice-gets-word-count.yml
198
216
  - test/fixtures/vcr_cassettes/alice-submits-bob.yml
199
217
  - test/test_helper.rb
200
- has_rdoc:
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MDQ3ODlmYjQ4NWZhMDY4NjE1OGY2NjI1YzhhNWJjOTY5MjU2N2M0OA==
5
- data.tar.gz: !binary |-
6
- ZWJhZmIzMWJiYWViZTRiYjA5NTgyNjFjOWQ3ZjVlOTkxYmNiNzQ5MA==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- ZjNhMTUwNWRlMzY2NDJhMjg0ZDg2ZWNjMTVmOTk5N2ZiYmUzYmM1ODYxN2I2
10
- NjgyZjg5MjU1NDc5M2Q1OTEyMTQzOTc1OGM5YmY5YjcyMGRjZGExMGUxZDY1
11
- MTNiYWQ5MzY5Y2E5YjYxOTBkMjgyMTZjYTYwY2YxMjZlMTJiNzc=
12
- data.tar.gz: !binary |-
13
- NDQwOWNmYTUyYmJmOWM2ZDEyOGU1MjczZTE1NDdjMjcxZjUxMDQ5ZTI3MWUz
14
- ZjFiOTcxM2Y3MjUxMzgxODBiNjAzN2VhZjI4ZGI2ZDQzN2ZlN2I5Yjg4NzYw
15
- NzNmMmM3ZDc4ZDM5MTEzODRkM2JhM2ZjMGVlMjNjMDQ1YjJjMTE=