measured-rails 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 76e8eab10f76aefe07b598a93972ee67973646fb
4
- data.tar.gz: f26684d6ee3c206b2ffb49564ad67f980ebfdd8d
3
+ metadata.gz: 5a228c3feac7e0810823eb7a838318ef24b1b459
4
+ data.tar.gz: 46d35f6ce7e1d68f65fe23620b21eba1e8358e40
5
5
  SHA512:
6
- metadata.gz: db89da596259e4adc7982c53197919ebd0d351a124440c631c69824d4a39adef35d31813c0ea3aa1060c7767ac3a3492cf302637dcf76592613787452bc0f42e
7
- data.tar.gz: f06519907cb185e3f0b1d9e2ba890c041727e4349fa822fe02684d6b24e61db5e360d889125283b7863f18bdeb1d7d73f53894bea8373507b40c122f123b1d4f
6
+ metadata.gz: cc6967a2287ac7cff1beb58a2af703bd1a512eafffd5f3791a6fd7f3027cb24771b3a8679cae7b5861bec4a36c35da3c6a9068a4e62476fe26c2ee0878f4c068
7
+ data.tar.gz: 0c9041617dc8ac13d9c06092adb946daddae25c370d2415e2ada1bb41ed9424ce0280c1d8160285b448bc2f79f55d1711890462ae95cb3df388ead85e7f649f7
@@ -42,7 +42,13 @@ module Measured::Rails::ActiveRecord
42
42
  if incoming.is_a?(measured_class)
43
43
  instance_variable_set("@measured_#{ field }", incoming)
44
44
  value_field_name = "#{ field }_value"
45
- public_send("#{ value_field_name }=", incoming.value.round(self.column_for_attribute(value_field_name).precision))
45
+ precision = self.column_for_attribute(value_field_name).precision
46
+ scale = self.column_for_attribute(value_field_name).scale
47
+ ## For BigDecimal#split syntax, refer http://ruby-doc.org/stdlib-2.1.1/libdoc/bigdecimal/rdoc/BigDecimal.html#method-i-split
48
+ if incoming.value.split[1].size > precision
49
+ raise Measured::Rails::Error, "The value #{incoming.value} being set for column '#{value_field_name}' has too many significant digits. Please ensure it has no more than #{precision} significant digits."
50
+ end
51
+ public_send("#{ value_field_name }=", incoming.value.round(scale))
46
52
  public_send("#{ field }_unit=", incoming.unit)
47
53
  else
48
54
  instance_variable_set("@measured_#{ field }", nil)
@@ -1,5 +1,5 @@
1
1
  module Measured
2
2
  module Rails
3
- VERSION = "0.0.6"
3
+ VERSION = "0.0.7"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: measured-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin McPhillips