shouhizei 0.0.2 → 0.1.0

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: 13540dacf27e8aa7c60226d7727be4b2024a4721
4
- data.tar.gz: 9b0cd9bb5cec81dc15b6cd325117ad52758898f5
3
+ metadata.gz: ac4ad367008d491b345bb08edfc30cd294399f5b
4
+ data.tar.gz: 69bb81259a1563cac37436c0c38c82e4e846d8ac
5
5
  SHA512:
6
- metadata.gz: 3dcb3b9e22177fb76e35ff0e2a3238e036109c04808a8693de4ca978602162491b07b1df014d09b950e7d98d7e383d584b76b1f9091bcaaa4d2c2895ddd90cfd
7
- data.tar.gz: 64589153c20251a20fa0c54ff83ef33e7a443b84d53cf58656faffd3957f59e154127a47feda5643229ce36d402b14deaa04c0a04b490c4e3cc5af66bf64ac18
6
+ metadata.gz: 8bf4726182b9f071ce10846ff5bacdde118fd802ec2286a264735e7162dfa60926de966d0b0348714b2cbbf30354b09f9059ca4aaf94d9c9353817ccea7004e0
7
+ data.tar.gz: c498cb34567dc64bf99b30eec11f037d933b83b10edae97bf4a26809fac661f04e25194f35bb889db8dfcea28bcc1d4445febb950b8eca7b352cb052ca31778d
data/README.md CHANGED
@@ -20,7 +20,7 @@ Or install it yourself as:
20
20
 
21
21
  ## Usage
22
22
 
23
- You can get Japanese excise tax rate like below.
23
+ You can get Japanese consumption tax rate like below.
24
24
 
25
25
  ```ruby
26
26
  Shouhizei.rate_on(Date.new(1989, 3, 31))
@@ -39,6 +39,26 @@ Shouhizei.rate_on()
39
39
  => (2/25)
40
40
  ```
41
41
 
42
+ Calculation tax included price.
43
+ Return value class is Integer.
44
+ ```ruby
45
+ Shouhizei.included(price: 100, date: Date.new(2014, 4, 1))
46
+ => 108 # return value class is Integer
47
+ ```
48
+
49
+ Configuration how to deal fraction round up or round down.
50
+ Default is round down.
51
+ ```ruby
52
+ Shouhizei.config[:rounding] = Shouhizei::RoundUp
53
+ Shouhizei.included(price: 10)
54
+ => 11
55
+
56
+ Shouhizei.config[:rounding] = Shouhizei::RoundDown
57
+ Shouhizei.included(price: 10)
58
+ => 10
59
+ ```
60
+
61
+
42
62
  ## Development
43
63
 
44
64
  After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
@@ -1,3 +1,3 @@
1
1
  module Shouhizei
2
- VERSION = "0.0.2"
2
+ VERSION = "0.1.0"
3
3
  end
data/lib/shouhizei.rb CHANGED
@@ -1,8 +1,10 @@
1
- require "shouhizei/version"
2
-
3
- require'yaml'
1
+ require 'shouhizei/version'
2
+ require 'yaml'
4
3
 
5
4
  module Shouhizei
5
+ RoundUp = 'Up'
6
+ RoundDown = 'Down'
7
+
6
8
  def self.rate_on(date = Date.today)
7
9
  rate_list.reverse_each do |key_date, rate|
8
10
  return rate.to_r if date >= key_date
@@ -10,6 +12,16 @@ module Shouhizei
10
12
  0.0r
11
13
  end
12
14
 
15
+ def self.included(price:, date: Date.today)
16
+ included_price = price + price * rate_on(date)
17
+ return included_price.ceil if config[:rounding] == RoundUp
18
+ included_price.floor
19
+ end
20
+
21
+ def self.config
22
+ @@config ||= {ronding: RoundDown}
23
+ end
24
+
13
25
  private
14
26
 
15
27
  def self.rate_list
data/shouhizei.gemspec CHANGED
@@ -20,6 +20,7 @@ Gem::Specification.new do |spec|
20
20
  spec.require_paths = ["lib"]
21
21
 
22
22
  spec.add_development_dependency "bundler", "~> 1.15"
23
- spec.add_development_dependency "rake", "~> 10.0"
24
23
  spec.add_development_dependency "minitest", "~> 5.0"
24
+ spec.add_development_dependency "rake", "~> 10.0"
25
+ spec.add_development_dependency "timecop", "~> 0.9"
25
26
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shouhizei
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - colorbox
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-07-31 00:00:00.000000000 Z
11
+ date: 2017-08-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.15'
27
+ - !ruby/object:Gem::Dependency
28
+ name: minitest
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '5.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '5.0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rake
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -39,19 +53,19 @@ dependencies:
39
53
  - !ruby/object:Gem::Version
40
54
  version: '10.0'
41
55
  - !ruby/object:Gem::Dependency
42
- name: minitest
56
+ name: timecop
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: '5.0'
61
+ version: '0.9'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: '5.0'
68
+ version: '0.9'
55
69
  description: This gem support to calculate Japan consumption tax
56
70
  email:
57
71
  - colorbox222@gmail.com