google_calendar 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.3
1
+ 0.1.4
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{google_calendar}
8
- s.version = "0.1.3"
8
+ s.version = "0.1.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Steve Zich"]
12
- s.date = %q{2011-01-28}
12
+ s.date = %q{2011-02-09}
13
13
  s.description = %q{A minimal wrapper around the google calendar API, which uses nokogiri for fast parsing.}
14
14
  s.email = %q{steve.zich@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -42,7 +42,7 @@ Gem::Specification.new do |s|
42
42
  s.homepage = %q{http://github.com/northworld/google_calendar}
43
43
  s.licenses = ["MIT"]
44
44
  s.require_paths = ["lib"]
45
- s.rubygems_version = %q{1.4.2}
45
+ s.rubygems_version = %q{1.5.0}
46
46
  s.summary = %q{A lightweight google calendar API wrapper}
47
47
  s.test_files = [
48
48
  "test/helper.rb",
@@ -62,6 +62,20 @@ module Google
62
62
  event_lookup("?q=#{query}")
63
63
  end
64
64
 
65
+ # Find all of the events associated with this calendar that start in the given time frame.
66
+ # The lower bound is inclusive, whereas the upper bound is exclusive.
67
+ # Events that overlap the range are included.
68
+ # Returns:
69
+ # nil if nothing found.
70
+ # a single event if only one found.
71
+ # an array of events if many found.
72
+ #
73
+ def find_events_in_range(start_min, start_max)
74
+ formatted_start_min = start_min.strftime("%Y-%m-%dT%H:%M:%S")
75
+ formatted_start_max = start_max.strftime("%Y-%m-%dT%H:%M:%S")
76
+ event_lookup("?start-min=#{formatted_start_min}&start-max=#{formatted_start_max}")
77
+ end
78
+
65
79
  # Attempts to find the event specified by the id
66
80
  # Returns:
67
81
  # nil if nothing found.
@@ -86,6 +86,13 @@ class TestGoogleCalendar < Test::Unit::TestCase
86
86
  assert_equal event.title, 'Test'
87
87
  end
88
88
 
89
+ should "find events in range" do
90
+ start_min = DateTime.new(2011, 2, 1, 11, 1, 1)
91
+ start_max = DateTime.new(2011, 2, 28, 23, 59, 59)
92
+ @calendar.expects(:event_lookup).with('?start-min=2011-02-01T11:01:01&start-max=2011-02-28T23:59:59')
93
+ events = @calendar.find_events_in_range(start_min, start_max)
94
+ end
95
+
89
96
  should "find an event by id" do
90
97
  @http_mock.stubs(:body).returns( get_mock_body("find_event_by_id.xml") )
91
98
  event = @calendar.find_event_by_id('oj6fmpaulbvk9ouoj0lj4v6hio')
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google_calendar
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 19
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 3
10
- version: 0.1.3
9
+ - 4
10
+ version: 0.1.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Steve Zich
@@ -15,11 +15,11 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-01-28 00:00:00 -08:00
18
+ date: 2011-02-09 00:00:00 -08:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
- type: :runtime
22
+ name: nokogiri
23
23
  version_requirements: &id001 !ruby/object:Gem::Requirement
24
24
  none: false
25
25
  requirements:
@@ -31,11 +31,11 @@ dependencies:
31
31
  - 4
32
32
  - 4
33
33
  version: 1.4.4
34
- requirement: *id001
35
34
  prerelease: false
36
- name: nokogiri
37
- - !ruby/object:Gem::Dependency
38
35
  type: :runtime
36
+ requirement: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: addressable
39
39
  version_requirements: &id002 !ruby/object:Gem::Requirement
40
40
  none: false
41
41
  requirements:
@@ -47,11 +47,11 @@ dependencies:
47
47
  - 2
48
48
  - 2
49
49
  version: 2.2.2
50
- requirement: *id002
51
50
  prerelease: false
52
- name: addressable
51
+ type: :runtime
52
+ requirement: *id002
53
53
  - !ruby/object:Gem::Dependency
54
- type: :development
54
+ name: shoulda
55
55
  version_requirements: &id003 !ruby/object:Gem::Requirement
56
56
  none: false
57
57
  requirements:
@@ -61,11 +61,11 @@ dependencies:
61
61
  segments:
62
62
  - 0
63
63
  version: "0"
64
- requirement: *id003
65
64
  prerelease: false
66
- name: shoulda
67
- - !ruby/object:Gem::Dependency
68
65
  type: :development
66
+ requirement: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ name: bundler
69
69
  version_requirements: &id004 !ruby/object:Gem::Requirement
70
70
  none: false
71
71
  requirements:
@@ -77,11 +77,11 @@ dependencies:
77
77
  - 0
78
78
  - 0
79
79
  version: 1.0.0
80
- requirement: *id004
81
80
  prerelease: false
82
- name: bundler
83
- - !ruby/object:Gem::Dependency
84
81
  type: :development
82
+ requirement: *id004
83
+ - !ruby/object:Gem::Dependency
84
+ name: jeweler
85
85
  version_requirements: &id005 !ruby/object:Gem::Requirement
86
86
  none: false
87
87
  requirements:
@@ -93,11 +93,11 @@ dependencies:
93
93
  - 5
94
94
  - 1
95
95
  version: 1.5.1
96
- requirement: *id005
97
96
  prerelease: false
98
- name: jeweler
99
- - !ruby/object:Gem::Dependency
100
97
  type: :development
98
+ requirement: *id005
99
+ - !ruby/object:Gem::Dependency
100
+ name: rcov
101
101
  version_requirements: &id006 !ruby/object:Gem::Requirement
102
102
  none: false
103
103
  requirements:
@@ -107,11 +107,11 @@ dependencies:
107
107
  segments:
108
108
  - 0
109
109
  version: "0"
110
- requirement: *id006
111
110
  prerelease: false
112
- name: rcov
113
- - !ruby/object:Gem::Dependency
114
111
  type: :development
112
+ requirement: *id006
113
+ - !ruby/object:Gem::Dependency
114
+ name: mocha
115
115
  version_requirements: &id007 !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
@@ -121,9 +121,9 @@ dependencies:
121
121
  segments:
122
122
  - 0
123
123
  version: "0"
124
- requirement: *id007
125
124
  prerelease: false
126
- name: mocha
125
+ type: :development
126
+ requirement: *id007
127
127
  description: A minimal wrapper around the google calendar API, which uses nokogiri for fast parsing.
128
128
  email: steve.zich@gmail.com
129
129
  executables: []
@@ -185,7 +185,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
185
185
  requirements: []
186
186
 
187
187
  rubyforge_project:
188
- rubygems_version: 1.4.2
188
+ rubygems_version: 1.5.0
189
189
  signing_key:
190
190
  specification_version: 3
191
191
  summary: A lightweight google calendar API wrapper