workpattern 0.4.0 → 0.5.0

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,82 +1,88 @@
1
1
  require File.dirname(__FILE__) + '/test_helper.rb'
2
2
 
3
- class TestWorkpatternModule < MiniTest::Unit::TestCase #:nodoc:
4
-
3
+ class TestWorkpatternModule < MiniTest::Test #:nodoc:
5
4
  def setup
6
- Workpattern.clear()
5
+ Workpattern.clear
7
6
  end
8
-
9
- def test_must_create_workpattern_with_given_name
10
- wp = Workpattern.new()
11
- assert_equal Workpattern::DEFAULT_WORKPATTERN_NAME, wp.name, 'not returned the default workpattern name'
12
- assert_equal Workpattern::DEFAULT_BASE_YEAR, wp.from.year, 'not returned the default workpattern base year'
13
- assert_equal Workpattern::DEFAULT_SPAN, wp.span, 'not returned the default workpattern span'
14
-
15
- mywp_name='barrie callender'
16
- mywp_base=1963
17
- mywp_span=48
18
- mywp = Workpattern.new(mywp_name, mywp_base,mywp_span)
19
- assert_equal mywp_name, mywp.name, 'not returned the supplied workpattern name'
20
- assert_equal mywp_base, mywp.from.year, 'not returned the supplied workpattern base year'
21
- assert_equal mywp_span, mywp.span, 'not returned the supplied workpattern span'
7
+
8
+ def test_must_create_workpattern_with_defaults
9
+ wp = Workpattern.new
10
+ assert_equal Workpattern::DEFAULT_WORKPATTERN_NAME, wp.name,
11
+ 'not returned the default workpattern name'
12
+ assert_equal Workpattern::DEFAULT_BASE_YEAR, wp.from.year,
13
+ 'not returned the default workpattern base year'
14
+ assert_equal Workpattern::DEFAULT_SPAN, wp.span,
15
+ 'not returned the default workpattern span'
16
+ end
17
+
18
+ def test_must_create_workpattern_with_given_parameters
19
+ mywp_name = 'barrie callender'
20
+ mywp_base = 1963
21
+ mywp_span = 48
22
+ mywp = Workpattern.new(mywp_name, mywp_base, mywp_span)
23
+ assert_equal mywp_name, mywp.name,
24
+ 'not returned the supplied workpattern name'
25
+ assert_equal mywp_base, mywp.from.year,
26
+ 'not returned the supplied workpattern base year'
27
+ assert_equal mywp_span, mywp.span,
28
+ 'not returned the supplied workpattern span'
22
29
  end
23
-
30
+
24
31
  def test_must_raise_error_when_creating_workpattern_with_existing_name
25
32
  assert_raises NameError do
26
- mywp_name='duplicate'
27
- wp=Workpattern.new(mywp_name)
28
- wp=Workpattern.new(mywp_name)
33
+ mywp_name = 'duplicate'
34
+ Workpattern.new(mywp_name)
35
+ Workpattern.new(mywp_name)
29
36
  end
30
37
  end
31
-
38
+
32
39
  def test_must_return_an_array_of_all_known_workpattern_objects
33
- names =%w{fred harry sally}
34
- names.each {|name| wp=Workpattern.new(name)}
40
+ names = %w(fred harry sally)
41
+ names.each { |name| Workpattern.new(name) }
35
42
  wp_names = Workpattern.to_a
36
-
37
- assert_equal names.size, wp_names.size, "lists are not the same size"
38
-
39
- wp_names.each {|name, wp| assert names.include?(name)}
43
+
44
+ assert_equal names.size, wp_names.size, 'lists are not the same size'
45
+
46
+ wp_names.each { |name, _wp| assert names.include?(name) }
40
47
  end
41
-
48
+
42
49
  def test_must_return_empty_array_when_no_workpatterns_exist
43
50
  assert Workpattern.to_a.empty?
44
51
  end
45
-
52
+
46
53
  def test_must_return_existing_workpattern
47
- names =%w{fred harry sally}
48
- names.each {|name| wp=Workpattern.new(name)}
49
-
50
- names.each {|name|
51
- wp=Workpattern.get(name)
52
- }
54
+ names = %w(fred harry sally)
55
+ names.each { |name| Workpattern.new(name) }
56
+
57
+ names.each do |name|
58
+ Workpattern.get(name)
59
+ end
53
60
  end
54
-
61
+
55
62
  def test_must_raise_error_when_workpattern_does_not_exist
56
- names =%w{fred harry sally}
57
- names.each {|name| wp=Workpattern.new(name)}
63
+ names = %w(fred harry sally)
64
+ names.each { |name| Workpattern.new(name) }
58
65
  assert_raises NameError do
59
- wp=Workpattern.get('missing')
66
+ Workpattern.get('missing')
60
67
  end
61
68
  end
62
-
69
+
63
70
  def test_must_delete_existing_workpattern_returning_true
64
- names =%w{fred harry sally}
65
- names.each {|name| wp=Workpattern.new(name)}
66
- names.each {|name| assert Workpattern.delete(name)}
71
+ names = %w(fred harry sally)
72
+ names.each { |name| Workpattern.new(name) }
73
+ names.each { |name| assert Workpattern.delete(name) }
67
74
  end
68
-
75
+
69
76
  def test_must_return_false_deleting_workpattern_that_does_not_exist
70
- names =%w{fred harry sally}
71
- names.each {|name| wp=Workpattern.new(name)}
77
+ names = %w(fred harry sally)
78
+ names.each { |name| Workpattern.new(name) }
72
79
  assert !Workpattern.delete('missing')
73
80
  end
74
-
81
+
75
82
  def test_must_delete_all_workpatterns
76
- names =%w{fred harry sally}
77
- names.each {|name| wp=Workpattern.new(name)}
83
+ names = %w(fred harry sally)
84
+ names.each { |name| Workpattern.new(name) }
78
85
  Workpattern.clear
79
86
  assert Workpattern.to_a.empty?
80
87
  end
81
-
82
88
  end
@@ -7,12 +7,12 @@ Gem::Specification.new do |s|
7
7
  s.version = Workpattern::VERSION
8
8
  s.authors = ["Barrie Callender"]
9
9
  s.email = ["barrie@callenb.org"]
10
- s.homepage = ""
11
- s.summary = %q{temporal calculations}
12
- s.description = %q{Workpattern performs date calculations that take into account working and resting periods.}
10
+ s.homepage = "http://github.com/callenb/workpattern"
11
+ s.summary = %q{Calculates dates and durations whilst taking into account working and non-working periods down to a minute}
12
+ s.description = %q{Calculates dates and durations whilst taking into account working and non-working times down to a minute. Business working time with holidays are a breeze.}
13
13
  s.license = 'MIT'
14
14
 
15
- s.rubyforge_project = "workpattern"
15
+ s.required_ruby_version = ">= 1.9.3"
16
16
 
17
17
  s.files = `git ls-files`.split("\n")
18
18
  s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
@@ -20,7 +20,8 @@ Gem::Specification.new do |s|
20
20
  s.require_paths = ["lib"]
21
21
 
22
22
  # specify any dependencies here; for example:
23
- # s.add_development_dependency "rspec"
24
- # s.add_runtime_dependency "rest-client"
23
+ s.add_runtime_dependency 'tzinfo'
25
24
  s.add_development_dependency('rake', ['~> 0.9.2'])
25
+ s.add_development_dependency('minitest', ['~> 5.4.3'])
26
26
  end
27
+
metadata CHANGED
@@ -1,44 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: workpattern
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Barrie Callender
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-23 00:00:00.000000000 Z
11
+ date: 2016-10-19 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tzinfo
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: rake
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
- - - ~>
31
+ - - "~>"
18
32
  - !ruby/object:Gem::Version
19
33
  version: 0.9.2
20
34
  type: :development
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
- - - ~>
38
+ - - "~>"
25
39
  - !ruby/object:Gem::Version
26
40
  version: 0.9.2
27
- description: Workpattern performs date calculations that take into account working
28
- and resting periods.
41
+ - !ruby/object:Gem::Dependency
42
+ name: minitest
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 5.4.3
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 5.4.3
55
+ description: Calculates dates and durations whilst taking into account working and
56
+ non-working times down to a minute. Business working time with holidays are a breeze.
29
57
  email:
30
58
  - barrie@callenb.org
31
59
  executables: []
32
60
  extensions: []
33
61
  extra_rdoc_files: []
34
62
  files:
35
- - .gitignore
36
- - .travis.yml
63
+ - ".gitignore"
64
+ - ".travis.yml"
37
65
  - CHANGELOG
38
66
  - Gemfile
39
67
  - README.md
40
68
  - Rakefile
41
- - config/website.yml
42
69
  - lib/workpattern.rb
43
70
  - lib/workpattern/clock.rb
44
71
  - lib/workpattern/utility/base.rb
@@ -55,7 +82,7 @@ files:
55
82
  - test/test_workpattern.rb
56
83
  - test/test_workpattern_module.rb
57
84
  - workpattern.gemspec
58
- homepage: ''
85
+ homepage: http://github.com/callenb/workpattern
59
86
  licenses:
60
87
  - MIT
61
88
  metadata: {}
@@ -65,18 +92,19 @@ require_paths:
65
92
  - lib
66
93
  required_ruby_version: !ruby/object:Gem::Requirement
67
94
  requirements:
68
- - - ! '>='
95
+ - - ">="
69
96
  - !ruby/object:Gem::Version
70
- version: '0'
97
+ version: 1.9.3
71
98
  required_rubygems_version: !ruby/object:Gem::Requirement
72
99
  requirements:
73
- - - ! '>='
100
+ - - ">="
74
101
  - !ruby/object:Gem::Version
75
102
  version: '0'
76
103
  requirements: []
77
- rubyforge_project: workpattern
78
- rubygems_version: 2.2.2
104
+ rubyforge_project:
105
+ rubygems_version: 2.6.7
79
106
  signing_key:
80
107
  specification_version: 4
81
- summary: temporal calculations
108
+ summary: Calculates dates and durations whilst taking into account working and non-working
109
+ periods down to a minute
82
110
  test_files: []
@@ -1,2 +0,0 @@
1
- host: callenb@rubyforge.org
2
- remote_dir: /var/www/gforge-projects/workpattern