From d773724af34fed7787fedd0c2f74f3906906abd5 Mon Sep 17 00:00:00 2001 From: Diego Araújo + João M. M. da Silva + Pedro Leal Date: Thu, 12 Jul 2012 16:35:12 -0300 Subject: [PATCH] [Mezuro] Refactored Range entity to Range Model. --- plugins/mezuro/lib/kalibro/entities/range.rb | 19 ------------------- plugins/mezuro/lib/kalibro/model.rb | 2 ++ plugins/mezuro/lib/kalibro/range.rb | 19 +++++++++++++++++++ plugins/mezuro/test/fixtures/range_fixtures.rb | 24 ++++++------------------ plugins/mezuro/test/unit/kalibro/entities/range_test.rb | 20 -------------------- plugins/mezuro/test/unit/kalibro/range_test.rb | 20 ++++++++++++++++++++ 6 files changed, 47 insertions(+), 57 deletions(-) delete mode 100644 plugins/mezuro/lib/kalibro/entities/range.rb create mode 100644 plugins/mezuro/lib/kalibro/range.rb delete mode 100644 plugins/mezuro/test/unit/kalibro/entities/range_test.rb create mode 100644 plugins/mezuro/test/unit/kalibro/range_test.rb diff --git a/plugins/mezuro/lib/kalibro/entities/range.rb b/plugins/mezuro/lib/kalibro/entities/range.rb deleted file mode 100644 index d6eafed..0000000 --- a/plugins/mezuro/lib/kalibro/entities/range.rb +++ /dev/null @@ -1,19 +0,0 @@ -class Kalibro::Entities::Range < Kalibro::Entities::Entity - - attr_accessor :beginning, :end, :label, :grade, :color, :comments - - def beginning=(value) - @beginning = value.to_f - @beginning = -1.0/0.0 if value == "-INF" - end - - def end=(value) - @end = value.to_f - @end = 1.0/0.0 if value == "INF" - end - - def grade=(value) - @grade = value.to_f - end - -end \ No newline at end of file diff --git a/plugins/mezuro/lib/kalibro/model.rb b/plugins/mezuro/lib/kalibro/model.rb index 71d16ef..5e57904 100644 --- a/plugins/mezuro/lib/kalibro/model.rb +++ b/plugins/mezuro/lib/kalibro/model.rb @@ -29,6 +29,8 @@ class Kalibro::Model return value if value.nil? return value.collect { |element| convert_to_hash(element) } if value.is_a?(Array) return value.to_hash if value.is_a?(Kalibro::Model) + return 'INF' if value.is_a?(Float) and value.infinite? == 1 + return '-INF' if value.is_a?(Float) and value.infinite? == -1 value end diff --git a/plugins/mezuro/lib/kalibro/range.rb b/plugins/mezuro/lib/kalibro/range.rb new file mode 100644 index 0000000..64101b2 --- /dev/null +++ b/plugins/mezuro/lib/kalibro/range.rb @@ -0,0 +1,19 @@ +class Kalibro::Range < Kalibro::Model + + attr_accessor :beginning, :end, :label, :grade, :color, :comments + + def beginning=(value) + @beginning = value.to_f + @beginning = -1.0/0.0 if value == "-INF" + end + + def end=(value) + @end = value.to_f + @end = 1.0/0.0 if value == "INF" + end + + def grade=(value) + @grade = value.to_f + end + +end diff --git a/plugins/mezuro/test/fixtures/range_fixtures.rb b/plugins/mezuro/test/fixtures/range_fixtures.rb index 0abbe41..78b0c3e 100644 --- a/plugins/mezuro/test/fixtures/range_fixtures.rb +++ b/plugins/mezuro/test/fixtures/range_fixtures.rb @@ -2,31 +2,19 @@ class RangeFixtures Infinity = 1.0/0.0 - def self.amloc_excellent - range = Kalibro::Entities::Range.new - range.beginning = 0.0 - range.end = 7.0 - range.label = 'Excellent' - range.grade = 10.0 - range.color = 'ff00ff00' - range + def self.range_excellent + Kalibro::Range.new range_excellent_hash end - def self.amloc_bad - range = Kalibro::Entities::Range.new - range.beginning = 19.5 - range.end = Infinity - range.label = 'Bad' - range.grade = 0.0 - range.color = 'ffff0000' - range + def self.range_bad + Kalibro::Range.new range_bad_hash end - def self.amloc_excellent_hash + def self.range_excellent_hash {:beginning => 0.0, :end => 7.0, :label => 'Excellent', :grade => 10.0, :color => 'ff00ff00'} end - def self.amloc_bad_hash + def self.range_bad_hash {:beginning => 19.5, :end => "INF", :label => 'Bad',:grade => 0.0, :color => 'ffff0000'} end diff --git a/plugins/mezuro/test/unit/kalibro/entities/range_test.rb b/plugins/mezuro/test/unit/kalibro/entities/range_test.rb deleted file mode 100644 index f172b8f..0000000 --- a/plugins/mezuro/test/unit/kalibro/entities/range_test.rb +++ /dev/null @@ -1,20 +0,0 @@ -require "test_helper" - -require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/range_fixtures" - -class RangeTest < ActiveSupport::TestCase - - def setup - @hash = RangeFixtures.amloc_bad_hash - @range = RangeFixtures.amloc_bad - end - - should 'create range from hash' do - assert_equal @range, Kalibro::Entities::Range.from_hash(@hash) - end - - should 'convert range to hash' do - assert_equal @hash, @range.to_hash - end - -end diff --git a/plugins/mezuro/test/unit/kalibro/range_test.rb b/plugins/mezuro/test/unit/kalibro/range_test.rb new file mode 100644 index 0000000..4ec7d10 --- /dev/null +++ b/plugins/mezuro/test/unit/kalibro/range_test.rb @@ -0,0 +1,20 @@ +require "test_helper" + +require "#{RAILS_ROOT}/plugins/mezuro/test/fixtures/range_fixtures" + +class RangeTest < ActiveSupport::TestCase + + def setup + @hash = RangeFixtures.range_bad_hash + @range = RangeFixtures.range_bad + end + + should 'create range from hash' do + assert_equal @hash[:label], Kalibro::Range.new(@hash).label + end + + should 'convert range to hash' do + assert_equal @hash, @range.to_hash + end + +end -- libgit2 0.21.2