wordpress-client 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- Y2Y4ZTExNTEwZTYwOGFhYTEyMmFkNGNiNDVmYmIyM2QyM2QwMjZkMw==
4
+ ZWRmZjc5ZWZiYzZmOGI2MzllZWFkYzEzN2E5OGY4ZDBiMzcxZTZlYw==
5
5
  data.tar.gz: !binary |-
6
- MzgwMjkyOWQ4OTUxODQ4M2YyMWQ5MzBmZWViZjc3YWU0NjE3OTFkOQ==
6
+ YWZiYTdlN2ViZjk1NWE2N2Q5Y2Y4NzkzZjFlZWRhZTg0YzQyMjEwYg==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- MTFiZWQxODg0YWNlMzU4NjA0M2ZhYTQ2ZWYyNDFlZmJmM2RhYjMxZDQ2NWUw
10
- NjgyNjQ3YTJmOWM2ZDE0ODEwZWFhOGEyNDgxZmY2OGM2NGQ5YjVhYTUwZjlh
11
- N2VjZjg0MGU1ODJjNjkyMzhjYTU0NGQxYjMzMTg5ZDQ5YTBmYmI=
9
+ ZmZkZDc2NGE0NDQ0OWE4MWNiMjVlNWFhZWRiZjFiNGVlMmJlOTE0OGJmM2Ji
10
+ Nzk3NjZkZjJjMWJhNTI3MjI0OTA5YTk3Y2NmYTdhMDU1NmJiOWIxOWQ0MWM0
11
+ Njk5ODdiNzBlMDNjZjRlZTgxNDg2Y2IzNTBhMWI4ZGEzZDY2ZDQ=
12
12
  data.tar.gz: !binary |-
13
- NDRiODQ4ZmQ2NWMzZjQyZDBkNGJkOTQxMDUyMGJlZTJjZTVjMDI3ODA3ZTAy
14
- ZDY2ZDI3MzU5NDE2OGEyYzZmZGVlZGI1MzdhYTUwZTI1NjA0NmJkYWIzZjcy
15
- MGM2NjVlZjRiNmZjN2I5OTE4ZGYwMDY2NTAzMzBjNGMzM2VjZDQ=
13
+ YmU4Y2I1MjUzZmE1ZjlhMTkyMTNjNzA1ZTE0NWFmY2U1NWU1NTgwZTFlOThm
14
+ NjA1ZDI0Mjg2OGJlYjBmNWM4YTZiOTg1OWE0ZWI1ZGNiNWNjOTQ5ZWVkZmI0
15
+ ZDgzNTYzM2UzOGM5YmQ0YTJkZDg0OWQyNjZmY2FiOGMwNWU0Zjk=
data/.travis.yml ADDED
@@ -0,0 +1,8 @@
1
+ language: ruby
2
+ branches:
3
+ only:
4
+ - master
5
+ rvm:
6
+ - 1.9.3
7
+ - 2.0.0
8
+ - 2.1.0
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # wordpress-client
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/wordpress-client.png)](https://rubygems.org/gems/wordpress-client) [![Build Status](https://travis-ci.org/dtaniwaki/wordpress-client.png)](https://travis-ci.org/dtaniwaki/wordpress-client)
4
+
3
5
  wordpress-client is a [Wordpress Rest API Wrapper](http://developer.wordpress.com/docs/api/).
4
6
 
5
7
  ## Getting started
@@ -54,4 +56,4 @@ See the [contributing guide](https://github.com/dtaniwaki/wordpress-client/blob/
54
56
 
55
57
  ## Copyright
56
58
 
57
- Copyright (c) 2010-2013 Daisuke Taniwaki. See LICENSE for details.
59
+ Copyright (c) 2013-2013 Daisuke Taniwaki. See [LICENSE](https://github.com/dtaniwaki/wordpress-client/blob/master/LICENSE) for details.
@@ -8,7 +8,7 @@ module FaradayMiddleware
8
8
  encoding = env[:response_headers]['content-encoding'].to_s.downcase
9
9
  case encoding
10
10
  when 'gzip'
11
- env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body]), encoding: 'ASCII-8BIT').read
11
+ env[:body] = Zlib::GzipReader.new(StringIO.new(env[:body]), :encoding => 'ASCII-8BIT').read
12
12
  env[:response_headers].delete('content-encoding')
13
13
  when 'deflate'
14
14
  env[:body] = Zlib::Inflate.inflate(env[:body])
@@ -1,4 +1,4 @@
1
- require 'json'
1
+ require 'multi_json'
2
2
  require 'wordpress/errors'
3
3
  require 'wordpress/ostruct'
4
4
  Dir.glob(File.expand_path('../../object/*.rb', __FILE__)) do |path|
@@ -1,9 +1,8 @@
1
+ require 'faraday'
2
+ require 'faraday_middleware/gzip'
1
3
  require 'wordpress/base'
2
4
  require 'wordpress/request'
3
5
  require 'wordpress/api'
4
- require 'faraday'
5
- require 'faraday_middleware/gzip'
6
- require 'multi_json'
7
6
 
8
7
  module Wordpress
9
8
  class Client < Base
@@ -1,7 +1,7 @@
1
+ require 'date'
1
2
  require 'wordpress/base'
2
3
  require 'wordpress/request'
3
4
  require 'wordpress/ostruct'
4
- require 'date'
5
5
 
6
6
  module Wordpress::Object
7
7
  class Base < Wordpress::Base
@@ -1,4 +1,4 @@
1
- require_relative 'base'
1
+ require_relative 'array'
2
2
 
3
3
  module Wordpress::Object
4
4
  class Comments < Array
@@ -15,7 +15,11 @@ module Wordpress
15
15
 
16
16
  def respond_to_missing?(method_name, include_private = false)
17
17
  key = method_name.to_s
18
- @hash.include?(key) || super
18
+ if @hash.include?(key)
19
+ define_accessor(key)
20
+ else
21
+ super
22
+ end
19
23
  end
20
24
 
21
25
  def to_s
@@ -40,16 +44,21 @@ module Wordpress
40
44
  key = method_name.to_s
41
45
  key = key[-1] == '=' ? key[0...-1] : key
42
46
  if @hash.include?(key)
43
- metaclass.send(:define_method, key, Proc.new{
44
- v = @hash[key]
45
- v.is_a?(Hash) ? Wordpress::OpenStruct.new(v) : v
46
- })
47
- metaclass.send(:define_method, "#{key}=", Proc.new{ |v|
48
- @hash[key] = v
49
- })
50
- return send(method_name, *args, &block)
47
+ define_accessor(key)
48
+ send(method_name, *args, &block)
49
+ else
50
+ super
51
51
  end
52
- super
52
+ end
53
+
54
+ def define_accessor(key)
55
+ metaclass.send(:define_method, key, Proc.new{
56
+ v = @hash[key]
57
+ v.is_a?(Hash) ? Wordpress::OpenStruct.new(v) : v
58
+ })
59
+ metaclass.send(:define_method, "#{key}=", Proc.new{ |v|
60
+ @hash[key] = v
61
+ })
53
62
  end
54
63
  end
55
64
  end
@@ -2,7 +2,7 @@ module Wordpress
2
2
  class Version
3
3
  MAJOR = 0 unless defined? Wordpress::Version::MAJOR
4
4
  MINOR = 1 unless defined? Wordpress::Version::MINOR
5
- PATCH = 4 unless defined? Wordpress::Version::PATCH
5
+ PATCH = 5 unless defined? Wordpress::Version::PATCH
6
6
  PRE = nil unless defined? Wordpress::Version::PRE
7
7
 
8
8
  class << self
@@ -1,4 +1,22 @@
1
+ unless Kernel.respond_to?(:require_relative)
2
+ module Kernel
3
+ def require_relative(relative_path)
4
+ desired_path = File.expand_path('../' + relative_path.to_str, caller[0])
5
+ shortest = desired_path
6
+ $:.each do |path|
7
+ path += '/'
8
+ if desired_path.index(path) == 0
9
+ candidate = desired_path.sub(path, '')
10
+ shortest = candidate if candidate.size < shortest.size
11
+ end
12
+ end
13
+ require shortest
14
+ end
15
+ end
16
+ end
17
+
1
18
  require 'logger'
19
+ require 'wordpress/version'
2
20
  require 'wordpress/client'
3
21
 
4
22
  module Wordpress
@@ -37,7 +37,9 @@ describe Wordpress::API do
37
37
 
38
38
  it "should raise error with invalid parameter" do
39
39
  expect {
40
- obj = client.send(method, *params[:args], :invalid_key => 1)
40
+ args = [method, *params[:args]]
41
+ args << {:invalid_key => 1}
42
+ obj = client.send(*args)
41
43
  }.to raise_error(Wordpress::ArgumentError)
42
44
  end
43
45
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wordpress-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daisuke Taniwaki
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-12-26 00:00:00.000000000 Z
11
+ date: 2013-12-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -102,6 +102,7 @@ extensions: []
102
102
  extra_rdoc_files: []
103
103
  files:
104
104
  - .gitignore
105
+ - .travis.yml
105
106
  - CONTRIBUTING.md
106
107
  - Gemfile
107
108
  - LICENSE