roman_numeral_evaluator 0.0.2 → 0.0.3

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.
@@ -1,5 +1,4 @@
1
1
  require_relative 'version'
2
- require_relative 'string'
3
2
 
4
3
  module RomanNumeralEvaluator
5
4
 
@@ -51,7 +50,6 @@ module RomanNumeralEvaluator
51
50
  end
52
51
 
53
52
  def self.to_decimal(value)
54
- value.upcase!
55
53
  result = 0
56
54
  DIGITS.values.reverse.each do |roman|
57
55
  while value.start_with? roman
@@ -1,3 +1,3 @@
1
1
  module RomanNumeralEvaluator
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
data/readme.md CHANGED
@@ -1,9 +1,6 @@
1
1
  ## About
2
2
 
3
- A Ruby gem that extends the String class to do math with Roman numerals, as well as handle Roman math problems as strings.
4
-
5
- "V" + "V"
6
- => "X"
3
+ A Ruby gem that solves Roman numeral math problems as strings.
7
4
 
8
5
  RomanNumeralEvaluator.solve("I + I")
9
6
  => "II"
@@ -14,7 +11,10 @@ In your gemfile
14
11
 
15
12
  gem 'roman_numeral_evaluator'
16
13
 
14
+ And execute:
17
15
 
16
+ $ bundle install
17
+
18
18
  ## Usage
19
19
 
20
20
  Basic problem
@@ -35,7 +35,7 @@ You can multiply!
35
35
  RomanNumeralEvaluator.solve('X * X')
36
36
  => "C"
37
37
 
38
- Mix Roman and Arabic
38
+ Mix Roman and Arabic.
39
39
 
40
40
  RomanNumeralEvaluator.solve('X * 10')
41
41
  => "C"
@@ -4,7 +4,7 @@ require File.expand_path('../lib/version', __FILE__)
4
4
  Gem::Specification.new do |gem|
5
5
  gem.authors = ["Travis Sheppard"]
6
6
  gem.email = ["travissheppard.1988@gmail.com"]
7
- gem.description = "A Ruby gem that extends the String class to do math with Roman numerals, as well as handle Roman math problems as strings."
7
+ gem.description = "A Ruby gem that solves Roman numeral math problems as strings."
8
8
  gem.summary = ""
9
9
  gem.homepage = ""
10
10
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roman_numeral_evaluator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -27,8 +27,7 @@ dependencies:
27
27
  - - ! '>='
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
- description: A Ruby gem that extends the String class to do math with Roman numerals,
31
- as well as handle Roman math problems as strings.
30
+ description: A Ruby gem that solves Roman numeral math problems as strings.
32
31
  email:
33
32
  - travissheppard.1988@gmail.com
34
33
  executables: []
@@ -41,13 +40,11 @@ files:
41
40
  - Rakefile
42
41
  - lib/LICENSE
43
42
  - lib/roman_numeral_evaluator.rb
44
- - lib/string.rb
45
43
  - lib/version.rb
46
44
  - readme.md
47
45
  - roman_numeral_evaluator.gemspec
48
46
  - spec/roman_numeral_evaluator_spec.rb
49
47
  - spec/spec_helper.rb
50
- - spec/string_spec.rb
51
48
  homepage: ''
52
49
  licenses: []
53
50
  post_install_message:
@@ -75,4 +72,3 @@ summary: ''
75
72
  test_files:
76
73
  - spec/roman_numeral_evaluator_spec.rb
77
74
  - spec/spec_helper.rb
78
- - spec/string_spec.rb
@@ -1,25 +0,0 @@
1
- class String
2
-
3
- def +(a)
4
- if RomanNumeralEvaluator.is_roman?(self) || RomanNumeralEvaluator.is_roman?(a)
5
- number = RomanNumeralEvaluator.to_decimal(self)
6
- other = RomanNumeralEvaluator.to_decimal(a)
7
- RomanNumeralEvaluator.to_roman(number + other)
8
- else
9
- self << a
10
- end
11
- end
12
-
13
- def -(a)
14
- RomanNumeralEvaluator.solve("#{self} - #{a}")
15
- end
16
-
17
- def *(a)
18
- RomanNumeralEvaluator.solve("#{self} * #{a}")
19
- end
20
-
21
- def /(a)
22
- RomanNumeralEvaluator.solve("#{self} / #{a}")
23
- end
24
-
25
- end
@@ -1,29 +0,0 @@
1
- require_relative 'spec_helper'
2
-
3
- describe String do
4
-
5
- it "should add roman numerals" do
6
- result = "V" + "V"
7
- result.should eq("X")
8
- end
9
-
10
- it "should subtract roman numerals" do
11
- result = "II" - "I"
12
- result.should eq("I")
13
- end
14
-
15
- it "should multiply roman numerals" do
16
- result = "II" * "II"
17
- result.should eq("IV")
18
- end
19
-
20
- it "should divide roman numerals" do
21
- result = "C" / "X"
22
- result.should eq("X")
23
- end
24
-
25
- it "should add non roman strings normally" do
26
- ("a" + "b").should eq("ab")
27
- end
28
-
29
- end