shopify_api 3.2.4 → 3.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 44b479654f7e155948ddabfca018f78047fe7a63
4
- data.tar.gz: 4d1b0b744941f6e4a1cc68de93fe6e663fd60619
3
+ metadata.gz: 1febe6e195154bd62771f2b8fc00410db6af76d9
4
+ data.tar.gz: 922a39a6929f9f451d377d9c4133134dc1f6bea2
5
5
  SHA512:
6
- metadata.gz: 144c870d4d8a1b892990f2f282933cf693a673f2ec0e6434ecce66e67d4303e9d343f9a8fcaff6c3efe57d8fea7820599f17f80ac369fd2b6bec53bc1acbb9c7
7
- data.tar.gz: 8d483b74a646f1cb71123df54806fd67c9e51a490b8d2d583556ceabcd10417a732971ddb9e61e16faf10a64a9536daec12fbe373e929fd4322a6fd214752f2d
6
+ metadata.gz: f7e8850c60cc4dafe98276923dd472db045db886bd07498fbde719ca0e2f5ff2cb224c0023bc36058e600821a74010927e7e6c07c14fb6134e68ece14d13b5ad
7
+ data.tar.gz: 7518d576598f7056e3e637256448a4599f6b753a9e9d8ad3af67ed10223bc9d22bb65efe6da5e99e43eab28defd25291c8b3c44bed249f2f6a1d146502a6ca47
Binary file
data.tar.gz.sig CHANGED
Binary file
data/CHANGELOG CHANGED
@@ -1,3 +1,12 @@
1
+ == Version 3.2.5
2
+
3
+ * More useful error messages for activating nil sessions
4
+ * Add tests for commonly deleted objects, and metafield tests, fix naming error in order_risk_test.rb
5
+
6
+ == Version 3.2.4
7
+
8
+ * No API changes
9
+
1
10
  == Version 3.2.3
2
11
 
3
12
  * Added pry to the CLI
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shopify_api (3.2.4)
4
+ shopify_api (3.2.5)
5
5
  activeresource (>= 3.0.0)
6
6
  pry (>= 0.9.12.6)
7
7
  thor (~> 0.18.1)
@@ -2,6 +2,7 @@ require 'shopify_api/version'
2
2
 
3
3
  module ShopifyAPI
4
4
  class Base < ActiveResource::Base
5
+ class InvalidSessionError < StandardError; end
5
6
  extend Countable
6
7
  self.include_root_in_json = false
7
8
  self.headers['User-Agent'] = ["ShopifyAPI/#{ShopifyAPI::VERSION}",
@@ -49,6 +50,7 @@ module ShopifyAPI
49
50
  end
50
51
 
51
52
  def activate_session(session)
53
+ raise InvalidSessionError.new("Session cannot be nil") if session.nil?
52
54
  self.site = session.site
53
55
  self.headers.merge!('X-Shopify-Access-Token' => session.token)
54
56
  end
@@ -1,3 +1,3 @@
1
1
  module ShopifyAPI
2
- VERSION = "3.2.4"
2
+ VERSION = "3.2.5"
3
3
  end
@@ -1,15 +1 @@
1
- dependencies:
2
- override:
3
- - bundle install --path=./data/bundler
4
-
5
- deploy:
6
- override:
7
- - |
8
- BUILD=`bundle exec rake build`
9
- if [ $? != 0 ]; then
10
- echo $BUILD;
11
- exit 1;
12
- fi
13
- PKG=`echo $BUILD | cut -d" " -f5 | sed -e s/\.$//`;
14
- VERSION=`echo $BUILD | cut -d" " -f2`;
15
- gem push $PKG
1
+ # using the default shipit config
@@ -51,6 +51,12 @@ class BaseTest < Test::Unit::TestCase
51
51
  assert_equal 'token2', ShopifyAPI::Shop.headers['X-Shopify-Access-Token']
52
52
  end
53
53
 
54
+ test '#activate_session with nil raises an InvalidSessionError' do
55
+ assert_raises ShopifyAPI::Base::InvalidSessionError do
56
+ ShopifyAPI::Base.activate_session nil
57
+ end
58
+ end
59
+
54
60
  test "#delete should send custom headers with request" do
55
61
  ShopifyAPI::Base.activate_session @session1
56
62
  ShopifyAPI::Base.headers['X-Custom'] = 'abc'
@@ -23,4 +23,17 @@ class ImageTest < Test::Unit::TestCase
23
23
  image = ShopifyAPI::Image.find(850703190, :params => {:product_id => 632910392})
24
24
  assert_equal 850703190, image.id
25
25
  end
26
+
27
+ def test_delete_image
28
+ fake "products/632910392/images/850703190", :method => :get, :body => load_fixture('image')
29
+ fake "products/632910392/images/850703190", :method => :delete, :body => "destroyed"
30
+ image = ShopifyAPI::Image.find(850703190, :params => {:product_id => 632910392})
31
+ assert image.destroy
32
+ end
33
+
34
+ def test_delete_image_without_fetching
35
+ fake "products/632910392/images/850703190", :method => :delete, :body => "destroyed"
36
+ image = ShopifyAPI::Image.new(product_id: 632910392, id: 850703190)
37
+ assert image.destroy
38
+ end
26
39
  end
@@ -0,0 +1,46 @@
1
+ require 'test_helper'
2
+
3
+ class MetafieldTest < Test::Unit::TestCase
4
+ def test_get_metafields
5
+ fake "metafields", :method => :get, :body => load_fixture('metafields')
6
+ metafields = ShopifyAPI::Metafield.find(:all)
7
+ end
8
+
9
+ def test_get_metafield
10
+ fake "metafields/721389482", :method => :get, :body => load_fixture('metafield')
11
+ assert ShopifyAPI::Metafield.find(721389482)
12
+ end
13
+
14
+ def test_get_metafield_of_a_blog
15
+ fake "blogs/1008414260/metafields/721389482", :method => :get, :body => load_fixture('metafield')
16
+ metafield = ShopifyAPI::Metafield.find(721389482, :params => {:resource => "blogs", :resource_id => 1008414260})
17
+ assert_equal 1008414260, metafield.prefix_options[:resource_id]
18
+ end
19
+
20
+ def test_create_metafield_for_a_blog
21
+ fake "blogs/1008414260", :method => :get, :body => load_fixture('blog')
22
+ fake "blogs/1008414260/metafields", :method => :post, :status => 201, :body => load_fixture('metafield')
23
+
24
+ blog = ShopifyAPI::Blog.find(1008414260)
25
+ metafield = blog.add_metafield(ShopifyAPI::Metafield.new(:namespace => "summaries", :key => "First Summary", :value => "Make commerce better", :value_type => "string"))
26
+
27
+ assert_equal ActiveSupport::JSON.decode('{"metafield":{"namespace":"summaries","key":"First Summary","value":"Make commerce better","value_type":"string"}}'), ActiveSupport::JSON.decode(FakeWeb.last_request.body)
28
+ assert !metafield.new_record?
29
+ end
30
+
31
+ def test_update_metafield
32
+ fake "metafields/721389482", :method => :get, :body => load_fixture('metafield')
33
+ fake "metafields/721389482", :method => :put, :status => 200, :body => load_fixture('metafield')
34
+ metafield = ShopifyAPI::Metafield.find(721389482)
35
+ metafield.namespace = "teaser"
36
+ assert metafield.save
37
+ end
38
+
39
+ def test_delete_metafield
40
+ fake "metafields/721389482", :method => :get, :body => load_fixture('metafield')
41
+ fake "metafields/721389482", :method => :delete, :body => 'destroyed'
42
+ metafield = ShopifyAPI::Metafield.find(721389482)
43
+ assert metafield.destroy
44
+ end
45
+ end
46
+
@@ -35,7 +35,7 @@ class OrderRiskTest < Test::Unit::TestCase
35
35
  assert v.destroy
36
36
  end
37
37
 
38
- def test_delete_order_risk
38
+ def test_update_order_risk
39
39
  fake "orders/450789469/risks/284138680", :method => :get, :body => load_fixture('order_risk')
40
40
  fake "orders/450789469/risks/284138680", :method => :put, :body => load_fixture('order_risk')
41
41
 
@@ -28,5 +28,12 @@ class OrderTest < Test::Unit::TestCase
28
28
  order.save
29
29
  assert_equal "Test note", order.note
30
30
  end
31
+
32
+ test "delete should delete an order" do
33
+ fake 'orders/450789469', :method => :get, :status => 200, :body => load_fixture('order')
34
+ fake 'orders/450789469', :method => :delete, :body => 'destroyed'
35
+ order = ShopifyAPI::Order.find(450789469)
36
+ assert order.destroy
37
+ end
31
38
  end
32
39
 
@@ -33,4 +33,11 @@ class VariantTest < Test::Unit::TestCase
33
33
  v = ShopifyAPI::Variant.find(808950810)
34
34
  assert_equal 632910392, v.product_id
35
35
  end
36
+
37
+ def test_delete_variant
38
+ fake "products/632910392/variants/808950810", :method => :get, :body => load_fixture('variant')
39
+ fake "products/632910392/variants/808950810", :method => :delete, :body => 'destroyed'
40
+ v = ShopifyAPI::Variant.find(808950810, :params => {:product_id => 632910392})
41
+ assert v.destroy
42
+ end
36
43
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shopify_api
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.2.4
4
+ version: 3.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shopify
@@ -30,7 +30,7 @@ cert_chain:
30
30
  fl3hbtVFTqbOlwL9vy1fudXcolIE/ZTcxQ+er07ZFZdKCXayR9PPs64heamfn0fp
31
31
  TConQSX2BnZdhIEYW+cKzEC/bLc=
32
32
  -----END CERTIFICATE-----
33
- date: 2014-05-20 00:00:00.000000000 Z
33
+ date: 2014-08-06 00:00:00.000000000 Z
34
34
  dependencies:
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: activeresource
@@ -275,6 +275,7 @@ files:
275
275
  - test/fulfillment_test.rb
276
276
  - test/image_test.rb
277
277
  - test/limits_test.rb
278
+ - test/metafield_test.rb
278
279
  - test/order_risk_test.rb
279
280
  - test/order_test.rb
280
281
  - test/product_test.rb
@@ -307,7 +308,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
307
308
  version: '0'
308
309
  requirements: []
309
310
  rubyforge_project:
310
- rubygems_version: 2.2.0
311
+ rubygems_version: 2.2.2
311
312
  signing_key:
312
313
  specification_version: 4
313
314
  summary: ShopifyAPI is a lightweight gem for accessing the Shopify admin REST web
metadata.gz.sig CHANGED
Binary file