bridge 0.1.3 → 0.1.4

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.
@@ -14,7 +14,7 @@ module Bridge::Points
14
14
 
15
15
  def average_score(number_to_skip = 1)
16
16
  scores = skipped_scores(number_to_skip)
17
- (scores.inject(0.0) { |result, score| result += score} / scores.size).round(-1)
17
+ ((scores.inject(0.0) { |result, score| result += score} / scores.size) + 5).div(10) * 10
18
18
  end
19
19
 
20
20
  def maximum
@@ -25,10 +25,10 @@ module Bridge::Points
25
25
  end
26
26
  end
27
27
 
28
- def maximum_in_percents(precision = 2)
28
+ def maximum_in_percents
29
29
  maximum.tap do |result|
30
30
  result.each do |score, points|
31
- result[score] = (points * 100.0 / theoretical_maximum).round(precision)
31
+ result[score] = (points * 100.0 / theoretical_maximum)
32
32
  end
33
33
  end
34
34
  end
@@ -44,7 +44,7 @@ module Bridge::Points
44
44
  def cavendish
45
45
  {}.tap do |result|
46
46
  @scores.each do |score|
47
- result[score] ||= (@scores.inject(0.0) { |points, s| points += Bridge::Points.imps(score - s) } / (@scores.size - 1)).round(1)
47
+ result[score] ||= @scores.inject(0.0) { |points, s| points += Bridge::Points.imps(score - s) } / (@scores.size - 1)
48
48
  end
49
49
  end
50
50
  end
@@ -1,3 +1,3 @@
1
1
  module Bridge
2
- VERSION = "0.1.3"
2
+ VERSION = "0.1.4"
3
3
  end
@@ -27,21 +27,21 @@ class TestDuplicate < Test::Unit::TestCase
27
27
  end
28
28
 
29
29
  test "maximum percents with non-unique values" do
30
- maximum_in_percents = Bridge::Points::Duplicate.new(-630, 100, 100, -600, 200, -600, 100, 100, 100, -600, 100, 100, 100, 100).maximum_in_percents(1)
31
- assert_equal 100.0, maximum_in_percents[200]
32
- assert_equal 61.5, maximum_in_percents[100]
33
- assert_equal 15.4, maximum_in_percents[-600]
34
- assert_equal 0.0, maximum_in_percents[-630]
30
+ maximum_in_percents = Bridge::Points::Duplicate.new(-630, 100, 100, -600, 200, -600, 100, 100, 100, -600, 100, 100, 100, 100).maximum_in_percents
31
+ assert_in_delta 100.0, maximum_in_percents[200], 0.05
32
+ assert_in_delta 61.5, maximum_in_percents[100], 0.05
33
+ assert_in_delta 15.4, maximum_in_percents[-600], 0.05
34
+ assert_in_delta 0.0, maximum_in_percents[-630], 0.05
35
35
  end
36
36
 
37
37
  test "maximum percents with unique-values" do
38
- maximum_in_percents = Bridge::Points::Duplicate.new(200, 170, 500, 430, 550, 420).maximum_in_percents(2)
39
- assert_equal 100.0, maximum_in_percents[550]
40
- assert_equal 80.0, maximum_in_percents[500]
41
- assert_equal 60.0, maximum_in_percents[430]
42
- assert_equal 40.0, maximum_in_percents[420]
43
- assert_equal 20.0, maximum_in_percents[200]
44
- assert_equal 0.0, maximum_in_percents[170]
38
+ maximum_in_percents = Bridge::Points::Duplicate.new(200, 170, 500, 430, 550, 420).maximum_in_percents
39
+ assert_in_delta 100.0, maximum_in_percents[550], 0.005
40
+ assert_in_delta 80.0, maximum_in_percents[500], 0.005
41
+ assert_in_delta 60.0, maximum_in_percents[430], 0.005
42
+ assert_in_delta 40.0, maximum_in_percents[420], 0.005
43
+ assert_in_delta 20.0, maximum_in_percents[200], 0.005
44
+ assert_in_delta 0.0, maximum_in_percents[170], 0.005
45
45
  end
46
46
 
47
47
  test "butler with skipping the highest and the lowest score" do
@@ -56,18 +56,18 @@ class TestDuplicate < Test::Unit::TestCase
56
56
 
57
57
  test "cavendish with unique values" do
58
58
  cavendish = Bridge::Points::Duplicate.new(690, 660, 630, 620, -100, -200).cavendish
59
- assert_equal 6.2, cavendish[690]
60
- assert_equal 5.4, cavendish[660]
61
- assert_equal 4.4, cavendish[630]
62
- assert_equal 4.4, cavendish[620]
63
- assert_equal -9.4, cavendish[-100]
64
- assert_equal -11.0, cavendish[-200]
59
+ assert_in_delta 6.2, cavendish[690], 0.05
60
+ assert_in_delta 5.4, cavendish[660], 0.05
61
+ assert_in_delta 4.4, cavendish[630], 0.05
62
+ assert_in_delta 4.4, cavendish[620], 0.05
63
+ assert_in_delta -9.4, cavendish[-100], 0.05
64
+ assert_in_delta -11.0, cavendish[-200], 0.05
65
65
  end
66
66
 
67
67
  test "cavendish with non-unique values" do
68
68
  cavendish = Bridge::Points::Duplicate.new(100, 100, 110, 140).cavendish
69
- assert_equal 1.0, cavendish[140]
70
- assert_equal -0.3, cavendish[110]
71
- assert_equal -0.3, cavendish[100]
69
+ assert_in_delta 1.0, cavendish[140], 0.05
70
+ assert_in_delta -0.3, cavendish[110], 0.05
71
+ assert_in_delta -0.3, cavendish[100], 0.05
72
72
  end
73
73
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 3
9
- version: 0.1.3
8
+ - 4
9
+ version: 0.1.4
10
10
  platform: ruby
11
11
  authors:
12
12
  - "Jakub Ku\xC5\xBAma"
@@ -83,7 +83,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
83
83
  requirements:
84
84
  - - ">="
85
85
  - !ruby/object:Gem::Version
86
- hash: -942411906783919221
86
+ hash: -2291621128807536229
87
87
  segments:
88
88
  - 0
89
89
  version: "0"