confluencer 0.2.4 → 0.2.5
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.
- data/VERSION +1 -1
- data/confluencer.gemspec +1 -1
- data/lib/confluence/page.rb +17 -5
- data/spec/confluence/page_spec.rb +32 -14
- metadata +2 -2
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.2.
|
1
|
+
0.2.5
|
data/confluencer.gemspec
CHANGED
data/lib/confluence/page.rb
CHANGED
@@ -13,14 +13,26 @@ module Confluence
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def store
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
unless self.version
|
17
|
+
# check for existing page by id or title
|
18
|
+
existing_page = if page_id
|
19
|
+
Page.find_by_id(page_id)
|
20
|
+
else
|
21
|
+
Page.find_by_title(space, title)
|
22
|
+
end
|
23
|
+
|
24
|
+
# take page_id and version from existing page if available
|
25
|
+
if existing_page
|
26
|
+
self.page_id = existing_page.page_id
|
27
|
+
self.version = existing_page.version
|
28
|
+
end
|
29
|
+
end
|
21
30
|
|
22
31
|
# reinitialize page after storing it
|
23
32
|
initialize(client.storePage(attributes))
|
33
|
+
|
34
|
+
# return self
|
35
|
+
self
|
24
36
|
end
|
25
37
|
|
26
38
|
def remove
|
@@ -3,8 +3,14 @@ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
|
3
3
|
module PageHelperMethods
|
4
4
|
include SessionHelperMethods
|
5
5
|
|
6
|
-
def create_test_page
|
7
|
-
Confluence::Page.new :space => config[:space], :title => config[:page_title], :content =>
|
6
|
+
def create_test_page(content = "foobar")
|
7
|
+
Confluence::Page.new :space => config[:space], :title => config[:page_title], :content => content
|
8
|
+
end
|
9
|
+
|
10
|
+
def store_test_page
|
11
|
+
new_session do
|
12
|
+
return create_test_page.store
|
13
|
+
end
|
8
14
|
end
|
9
15
|
end
|
10
16
|
|
@@ -50,22 +56,14 @@ describe Confluence::Page do
|
|
50
56
|
end
|
51
57
|
end
|
52
58
|
|
53
|
-
it "should update an existing page in Confluence" do
|
54
|
-
page =
|
55
|
-
|
56
|
-
new_session do
|
57
|
-
# initialize test page
|
58
|
-
page = create_test_page
|
59
|
-
|
60
|
-
# store page
|
61
|
-
page.store
|
62
|
-
end
|
59
|
+
it "should update an existing page in Confluence by id" do
|
60
|
+
page = store_test_page
|
63
61
|
|
64
62
|
new_session do
|
65
63
|
# create test page with same id but updated content
|
66
|
-
updated_page = create_test_page
|
64
|
+
updated_page = create_test_page "updated content"
|
65
|
+
|
67
66
|
updated_page.page_id = page.page_id
|
68
|
-
updated_page.content = "updated content"
|
69
67
|
|
70
68
|
# store page
|
71
69
|
updated_page.store
|
@@ -75,4 +73,24 @@ describe Confluence::Page do
|
|
75
73
|
updated_page.content.should == "updated content"
|
76
74
|
end
|
77
75
|
end
|
76
|
+
|
77
|
+
it "should update an existing page in Confluence by space and title" do
|
78
|
+
page = store_test_page
|
79
|
+
|
80
|
+
new_session do
|
81
|
+
# create test page with same title but updated content
|
82
|
+
updated_page = create_test_page "updated content"
|
83
|
+
|
84
|
+
updated_page.page_id.should be_nil
|
85
|
+
updated_page.title.should == page.title
|
86
|
+
updated_page.space.should == page.space
|
87
|
+
|
88
|
+
# store page
|
89
|
+
updated_page.store
|
90
|
+
|
91
|
+
# assert version
|
92
|
+
updated_page.version.should > page.version
|
93
|
+
updated_page.content.should == "updated content"
|
94
|
+
end
|
95
|
+
end
|
78
96
|
end
|