ankit 0.0.5 → 0.0.6
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/lib/ankit/challenge.rb +2 -1
- data/lib/ankit/challenge_command.rb +1 -3
- data/lib/ankit/runtime.rb +2 -1
- data/test/command_test.rb +18 -0
- data/test/helpers.rb +4 -0
- metadata +10 -10
data/lib/ankit/challenge.rb
CHANGED
@@ -243,8 +243,9 @@ module Ankit
|
|
243
243
|
end
|
244
244
|
|
245
245
|
def show_summary_header
|
246
|
+
hitrate = sprintf("%.1f", self.session.hitrate)
|
246
247
|
status = ["P:#{self.session.limit_reach}/#{self.session.limit}",
|
247
|
-
"H:#{
|
248
|
+
"H:#{hitrate}",
|
248
249
|
"M:" + self.session.maturity_triple.map(&:to_s).join(","),
|
249
250
|
"R:#{self.progress.this_round.to_s}"
|
250
251
|
]
|
@@ -13,8 +13,6 @@ module Ankit
|
|
13
13
|
spec.on("-l", "--limit N") { |n| options[:limit] = n.to_i }
|
14
14
|
end
|
15
15
|
|
16
|
-
DEFAULT_COUNT = 50
|
17
|
-
|
18
16
|
def session; @session ||= Challenge::Session.make(runtime, coming_limit); end
|
19
17
|
|
20
18
|
def execute()
|
@@ -31,7 +29,7 @@ module Ankit
|
|
31
29
|
private
|
32
30
|
|
33
31
|
def coming_limit
|
34
|
-
options[:limit] or
|
32
|
+
options[:limit] or runtime.config.challenge_limit
|
35
33
|
end
|
36
34
|
end
|
37
35
|
end
|
data/lib/ankit/runtime.rb
CHANGED
@@ -20,11 +20,12 @@ module Ankit
|
|
20
20
|
class Config
|
21
21
|
DEFAULT_PATH = File.expand_path("~/.ankit")
|
22
22
|
|
23
|
-
attr_writer :repo, :location, :card_paths
|
23
|
+
attr_writer :repo, :location, :card_paths, :challenge_limit
|
24
24
|
|
25
25
|
def repo; @repo ||= File.expand_path("~/.ankit.d"); end
|
26
26
|
def location; @location ||= `hostname`.strip; end
|
27
27
|
def card_paths; @card_paths ||= [File.join(repo, "cards")]; end
|
28
|
+
def challenge_limit; @challenge_limit ||= 50; end
|
28
29
|
|
29
30
|
# Computed parameters
|
30
31
|
def primary_journal
|
data/test/command_test.rb
CHANGED
@@ -4,6 +4,7 @@ require 'ankit/runtime'
|
|
4
4
|
require 'test/unit'
|
5
5
|
require 'fileutils'
|
6
6
|
require 'tmpdir'
|
7
|
+
require 'tempfile'
|
7
8
|
require 'mocha'
|
8
9
|
|
9
10
|
class CommandTest < Test::Unit::TestCase
|
@@ -288,6 +289,23 @@ class ChallengeTest < Test::Unit::TestCase
|
|
288
289
|
assert_equal(actual.progress.size, 2)
|
289
290
|
end
|
290
291
|
|
292
|
+
def test_initial_state_limit_rc
|
293
|
+
file = Tempfile.new('foo')
|
294
|
+
begin
|
295
|
+
file.write(<<EOF
|
296
|
+
self.challenge_limit = 3
|
297
|
+
self.repo = "#{NUMBER_REPO}"
|
298
|
+
EOF
|
299
|
+
)
|
300
|
+
file.close
|
301
|
+
runtime = make_runtime_using(Config.open(file.path))
|
302
|
+
actual = runtime.make_command(["challenge"]).initial_state
|
303
|
+
assert_equal(actual.progress.size, 3)
|
304
|
+
ensure
|
305
|
+
file.unlink
|
306
|
+
end
|
307
|
+
end
|
308
|
+
|
291
309
|
FIRST_CORRECT_ANSWER = "Vanilla, Please?"
|
292
310
|
SECOND_CORRECT_ANSWER = "Hello"
|
293
311
|
FIRST_WRONG_ANSWER = "Doesn't Match"
|
data/test/helpers.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ankit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-05-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: highline
|
16
|
-
requirement: &
|
16
|
+
requirement: &13315100 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 1.6.11
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *13315100
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: diff-lcs
|
27
|
-
requirement: &
|
27
|
+
requirement: &13314460 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 1.1.3
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *13314460
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: json
|
38
|
-
requirement: &
|
38
|
+
requirement: &13313900 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 1.6.5
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *13313900
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: mocha
|
49
|
-
requirement: &
|
49
|
+
requirement: &13313420 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,7 +54,7 @@ dependencies:
|
|
54
54
|
version: 0.10.4
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *13313420
|
58
58
|
description: ! 'Ankit is a CLI and terminal based flashcard program to learn your
|
59
59
|
new language.
|
60
60
|
|