mediawiki-gateway 0.3.8 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/doc/classes/MediaWiki.html +8 -1
- data/doc/classes/MediaWiki/APIError.html +186 -0
- data/doc/classes/MediaWiki/Config.html +12 -12
- data/doc/classes/MediaWiki/Exception.html +122 -0
- data/doc/classes/MediaWiki/Gateway.html +740 -530
- data/doc/classes/MediaWiki/Unauthorized.html +120 -0
- data/doc/created.rid +1 -1
- data/doc/files/README.html +12 -3
- data/doc/files/lib/media_wiki/exception_rb.html +101 -0
- data/doc/files/lib/media_wiki/gateway_rb.html +2 -1
- data/doc/files/lib/media_wiki/utils_rb.html +1 -1
- data/doc/fr_class_index.html +3 -0
- data/doc/fr_file_index.html +1 -0
- data/doc/fr_method_index.html +32 -26
- data/lib/media_wiki.rb +2 -1
- data/lib/media_wiki/exception.rb +22 -0
- data/lib/media_wiki/gateway.rb +15 -14
- data/lib/media_wiki/utils.rb +1 -3
- data/mediawiki-gateway.gemspec +7 -2
- data/spec/gateway_spec.rb +11 -11
- data/spec/spec_helper.rb +4 -6
- data/spec/utils_spec.rb +4 -0
- metadata +10 -5
data/lib/media_wiki/utils.rb
CHANGED
@@ -1,6 +1,4 @@
|
|
1
1
|
module MediaWiki
|
2
|
-
require 'activesupport'
|
3
|
-
|
4
2
|
class << self
|
5
3
|
|
6
4
|
# Extract base name. If there are no subpages, return page name.
|
@@ -49,7 +47,7 @@ module MediaWiki
|
|
49
47
|
# taking care not to mangle slashes or colons
|
50
48
|
# [wiki] Page name string in Wiki format
|
51
49
|
def wiki_to_uri(wiki)
|
52
|
-
wiki.to_s.split('/').map {|chunk| CGI.escape(chunk.tr(' ', '_')) }.join('/').gsub('%3A', ':') if wiki
|
50
|
+
wiki.to_s.split('/').map {|chunk| CGI.escape(CGI.unescape(chunk).tr(' ', '_')) }.join('/').gsub('%3A', ':') if wiki
|
53
51
|
end
|
54
52
|
|
55
53
|
# Return current version of MediaWiki::Gateway
|
data/mediawiki-gateway.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{mediawiki-gateway}
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.4.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Jani Patokallio"]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-05-18}
|
13
13
|
s.description = %q{}
|
14
14
|
s.email = %q{jpatokal@iki.fi}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -20,11 +20,15 @@ Gem::Specification.new do |s|
|
|
20
20
|
"Rakefile",
|
21
21
|
"config/hosts.yml",
|
22
22
|
"doc/classes/MediaWiki.html",
|
23
|
+
"doc/classes/MediaWiki/APIError.html",
|
23
24
|
"doc/classes/MediaWiki/Config.html",
|
25
|
+
"doc/classes/MediaWiki/Exception.html",
|
24
26
|
"doc/classes/MediaWiki/Gateway.html",
|
27
|
+
"doc/classes/MediaWiki/Unauthorized.html",
|
25
28
|
"doc/created.rid",
|
26
29
|
"doc/files/README.html",
|
27
30
|
"doc/files/lib/media_wiki/config_rb.html",
|
31
|
+
"doc/files/lib/media_wiki/exception_rb.html",
|
28
32
|
"doc/files/lib/media_wiki/gateway_rb.html",
|
29
33
|
"doc/files/lib/media_wiki/utils_rb.html",
|
30
34
|
"doc/files/script/create_page_rb.html",
|
@@ -43,6 +47,7 @@ Gem::Specification.new do |s|
|
|
43
47
|
"doc/rdoc-style.css",
|
44
48
|
"lib/media_wiki.rb",
|
45
49
|
"lib/media_wiki/config.rb",
|
50
|
+
"lib/media_wiki/exception.rb",
|
46
51
|
"lib/media_wiki/gateway.rb",
|
47
52
|
"lib/media_wiki/utils.rb",
|
48
53
|
"mediawiki-gateway.gemspec",
|
data/spec/gateway_spec.rb
CHANGED
@@ -44,7 +44,7 @@ describe MediaWiki::Gateway do
|
|
44
44
|
it "should raise an error" do
|
45
45
|
lambda do
|
46
46
|
@gateway.login('bogususer', 'sekrit')
|
47
|
-
end.should raise_error(
|
47
|
+
end.should raise_error(MediaWiki::Unauthorized)
|
48
48
|
end
|
49
49
|
|
50
50
|
end
|
@@ -54,7 +54,7 @@ describe MediaWiki::Gateway do
|
|
54
54
|
it "should raise an error" do
|
55
55
|
lambda do
|
56
56
|
@gateway.login('atlasmw', 'sekrit')
|
57
|
-
end.should raise_error(
|
57
|
+
end.should raise_error(MediaWiki::Unauthorized)
|
58
58
|
end
|
59
59
|
|
60
60
|
end
|
@@ -64,7 +64,7 @@ describe MediaWiki::Gateway do
|
|
64
64
|
it "should raise an error" do
|
65
65
|
lambda do
|
66
66
|
@gateway.login('atlasmw', 'wombat', 'bogusdomain')
|
67
|
-
end.should raise_error(
|
67
|
+
end.should raise_error(MediaWiki::Unauthorized)
|
68
68
|
end
|
69
69
|
|
70
70
|
end
|
@@ -93,7 +93,7 @@ describe MediaWiki::Gateway do
|
|
93
93
|
it "should raise an error" do
|
94
94
|
lambda do
|
95
95
|
@gateway.send(:get_token, 'import', 'Main Page')
|
96
|
-
end.should raise_error(
|
96
|
+
end.should raise_error(MediaWiki::Unauthorized)
|
97
97
|
end
|
98
98
|
|
99
99
|
end
|
@@ -350,7 +350,7 @@ describe MediaWiki::Gateway do
|
|
350
350
|
it "should raise an error" do
|
351
351
|
lambda do
|
352
352
|
@gateway.create("Main Page", "Some new content")
|
353
|
-
end.should raise_error(
|
353
|
+
end.should raise_error(MediaWiki::APIError)
|
354
354
|
end
|
355
355
|
|
356
356
|
end
|
@@ -440,7 +440,7 @@ describe MediaWiki::Gateway do
|
|
440
440
|
it "should raise an error" do
|
441
441
|
lambda do
|
442
442
|
@gateway.delete("Missing Page")
|
443
|
-
end.should raise_error(
|
443
|
+
end.should raise_error(MediaWiki::APIError)
|
444
444
|
end
|
445
445
|
end
|
446
446
|
end
|
@@ -454,7 +454,7 @@ describe MediaWiki::Gateway do
|
|
454
454
|
it "should raise an error" do
|
455
455
|
lambda do
|
456
456
|
@gateway.delete("Deletable Page")
|
457
|
-
end.should raise_error(
|
457
|
+
end.should raise_error(MediaWiki::Unauthorized)
|
458
458
|
end
|
459
459
|
|
460
460
|
end
|
@@ -499,7 +499,7 @@ describe MediaWiki::Gateway do
|
|
499
499
|
it "should raise an error" do
|
500
500
|
lambda do
|
501
501
|
@gateway.undelete("Undeletable Page")
|
502
|
-
end.should raise_error(
|
502
|
+
end.should raise_error(MediaWiki::APIError)
|
503
503
|
end
|
504
504
|
|
505
505
|
end
|
@@ -565,7 +565,7 @@ describe MediaWiki::Gateway do
|
|
565
565
|
it "should raise an error" do
|
566
566
|
lambda do
|
567
567
|
@gateway.search("")
|
568
|
-
end.should raise_error(
|
568
|
+
end.should raise_error(MediaWiki::APIError)
|
569
569
|
end
|
570
570
|
|
571
571
|
end
|
@@ -644,7 +644,7 @@ describe MediaWiki::Gateway do
|
|
644
644
|
it "should raise an error" do
|
645
645
|
lambda do
|
646
646
|
@gateway.import(import_file)
|
647
|
-
end.should raise_error(
|
647
|
+
end.should raise_error(MediaWiki::Unauthorized)
|
648
648
|
end
|
649
649
|
|
650
650
|
end
|
@@ -758,7 +758,7 @@ describe MediaWiki::Gateway do
|
|
758
758
|
it "should raise an error" do
|
759
759
|
lambda do
|
760
760
|
@gateway.send(:get_userrights_token, 'nosuchuser')
|
761
|
-
end.should raise_error(
|
761
|
+
end.should raise_error(MediaWiki::APIError)
|
762
762
|
end
|
763
763
|
end
|
764
764
|
|
data/spec/spec_helper.rb
CHANGED
@@ -5,12 +5,10 @@ Spec::Runner.configure do |config|
|
|
5
5
|
config.mock_with RR::Adapters::Rspec
|
6
6
|
end
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
# :nodoc: Rails 2.3.x: Hash#to_xml is defined in active_support
|
9
|
+
# :nodoc: Rails 3: #to_xml is defined in ActiveModel::Serializers::Xml
|
10
|
+
require 'active_support'
|
11
|
+
unless Hash.method_defined? :to_xml
|
11
12
|
require 'active_model'
|
12
13
|
Hash.send(:include, ActiveModel::Serializers::Xml)
|
13
|
-
else
|
14
|
-
# :nodoc: Rails 2.3.x: Hash#to_xml is defined in active_support
|
15
|
-
require 'active_support'
|
16
14
|
end
|
data/spec/utils_spec.rb
CHANGED
@@ -62,6 +62,10 @@ describe MediaWiki do
|
|
62
62
|
MediaWiki.wiki_to_uri('Zoo:Phở/B&r/B z').should == 'Zoo:Ph%E1%BB%9F/B%26r/B_z'
|
63
63
|
end
|
64
64
|
|
65
|
+
it "should preserve any URL-encoded characters" do
|
66
|
+
MediaWiki.wiki_to_uri('Zoo:Ph%E1%BB%9F/B%26r/B_z').should == 'Zoo:Ph%E1%BB%9F/B%26r/B_z'
|
67
|
+
end
|
68
|
+
|
65
69
|
it "should pass through nil" do
|
66
70
|
MediaWiki.wiki_to_uri(nil).should be_nil
|
67
71
|
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mediawiki-gateway
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 13
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 0.
|
8
|
+
- 4
|
9
|
+
- 1
|
10
|
+
version: 0.4.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Jani Patokallio
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-05-18 00:00:00 +10:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -103,11 +103,15 @@ files:
|
|
103
103
|
- Rakefile
|
104
104
|
- config/hosts.yml
|
105
105
|
- doc/classes/MediaWiki.html
|
106
|
+
- doc/classes/MediaWiki/APIError.html
|
106
107
|
- doc/classes/MediaWiki/Config.html
|
108
|
+
- doc/classes/MediaWiki/Exception.html
|
107
109
|
- doc/classes/MediaWiki/Gateway.html
|
110
|
+
- doc/classes/MediaWiki/Unauthorized.html
|
108
111
|
- doc/created.rid
|
109
112
|
- doc/files/README.html
|
110
113
|
- doc/files/lib/media_wiki/config_rb.html
|
114
|
+
- doc/files/lib/media_wiki/exception_rb.html
|
111
115
|
- doc/files/lib/media_wiki/gateway_rb.html
|
112
116
|
- doc/files/lib/media_wiki/utils_rb.html
|
113
117
|
- doc/files/script/create_page_rb.html
|
@@ -126,6 +130,7 @@ files:
|
|
126
130
|
- doc/rdoc-style.css
|
127
131
|
- lib/media_wiki.rb
|
128
132
|
- lib/media_wiki/config.rb
|
133
|
+
- lib/media_wiki/exception.rb
|
129
134
|
- lib/media_wiki/gateway.rb
|
130
135
|
- lib/media_wiki/utils.rb
|
131
136
|
- mediawiki-gateway.gemspec
|