shopify-mock 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +1 -1
- data/README.rdoc +40 -22
- data/Rakefile +9 -0
- data/lib/shopify-mock.rb +4 -3
- data/lib/shopify-mock/fixtures.rb +11 -2
- data/lib/shopify-mock/fixtures/{articles.json → json/articles.json} +0 -0
- data/lib/shopify-mock/fixtures/{assets.json → json/assets.json} +0 -0
- data/lib/shopify-mock/fixtures/{blogs.json → json/blogs.json} +0 -0
- data/lib/shopify-mock/fixtures/{collect.json → json/collect.json} +0 -0
- data/lib/shopify-mock/fixtures/{comments.json → json/comments.json} +0 -0
- data/lib/shopify-mock/fixtures/{count.json → json/count.json} +0 -0
- data/lib/shopify-mock/fixtures/{countries.json → json/countries.json} +0 -0
- data/lib/shopify-mock/fixtures/{custom_collections.json → json/custom_collections.json} +0 -0
- data/lib/shopify-mock/fixtures/{customer_groups.json → json/customer_groups.json} +0 -0
- data/lib/shopify-mock/fixtures/{customers.json → json/customers.json} +0 -0
- data/lib/shopify-mock/fixtures/{events.json → json/events.json} +0 -0
- data/lib/shopify-mock/fixtures/{fulfillments.json → json/fulfillments.json} +0 -0
- data/lib/shopify-mock/fixtures/{images.json → json/images.json} +0 -0
- data/lib/shopify-mock/fixtures/{metafields.json → json/metafields.json} +0 -0
- data/lib/shopify-mock/fixtures/{orders.json → json/orders.json} +0 -0
- data/lib/shopify-mock/fixtures/{pages.json → json/pages.json} +0 -0
- data/lib/shopify-mock/fixtures/{product_search_engines.json → json/product_search_engines.json} +0 -0
- data/lib/shopify-mock/fixtures/{products.json → json/products.json} +0 -0
- data/lib/shopify-mock/fixtures/{provinces.json → json/provinces.json} +0 -0
- data/lib/shopify-mock/fixtures/{redirects.json → json/redirects.json} +0 -0
- data/lib/shopify-mock/fixtures/{script_tags.json → json/script_tags.json} +0 -0
- data/lib/shopify-mock/fixtures/{shop.json → json/shop.json} +0 -0
- data/lib/shopify-mock/fixtures/{smart_collections.json → json/smart_collections.json} +0 -0
- data/lib/shopify-mock/fixtures/{test.json → json/test.json} +0 -0
- data/lib/shopify-mock/fixtures/{themes.json → json/themes.json} +0 -0
- data/lib/shopify-mock/fixtures/{transactions.json → json/transactions.json} +0 -0
- data/lib/shopify-mock/fixtures/{variants.json → json/variants.json} +0 -0
- data/lib/shopify-mock/fixtures/{webhooks.json → json/webhooks.json} +0 -0
- data/lib/shopify-mock/fixtures/xml/articles.xml +29 -0
- data/lib/shopify-mock/fixtures/xml/assets.xml +135 -0
- data/lib/shopify-mock/fixtures/xml/blogs.xml +14 -0
- data/lib/shopify-mock/fixtures/xml/collect.xml +10 -0
- data/lib/shopify-mock/fixtures/xml/comments.xml +18 -0
- data/lib/shopify-mock/fixtures/xml/count.xml +2 -0
- data/lib/shopify-mock/fixtures/xml/countries.xml +15 -0
- data/lib/shopify-mock/fixtures/xml/custom_collections.xml +13 -0
- data/lib/shopify-mock/fixtures/xml/customer_groups.xml +24 -0
- data/lib/shopify-mock/fixtures/xml/customers.xml +31 -0
- data/lib/shopify-mock/fixtures/xml/events.xml +12 -0
- data/lib/shopify-mock/fixtures/xml/fulfillments.xml +34 -0
- data/lib/shopify-mock/fixtures/xml/images.xml +11 -0
- data/lib/shopify-mock/fixtures/xml/metafields.xml +13 -0
- data/lib/shopify-mock/fixtures/xml/orders.xml +140 -0
- data/lib/shopify-mock/fixtures/xml/pages.xml +15 -0
- data/lib/shopify-mock/fixtures/xml/product_search_engines.xml +7 -0
- data/lib/shopify-mock/fixtures/xml/products.xml +113 -0
- data/lib/shopify-mock/fixtures/xml/provinces.xml +99 -0
- data/lib/shopify-mock/fixtures/xml/redirects.xml +18 -0
- data/lib/shopify-mock/fixtures/xml/script_tags.xml +10 -0
- data/lib/shopify-mock/fixtures/xml/shop.xml +25 -0
- data/lib/shopify-mock/fixtures/xml/smart_collections.xml +20 -0
- data/lib/shopify-mock/fixtures/xml/test.xml +2 -0
- data/lib/shopify-mock/fixtures/xml/themes.xml +24 -0
- data/lib/shopify-mock/fixtures/xml/transactions.xml +14 -0
- data/lib/shopify-mock/fixtures/xml/variants.xml +83 -0
- data/lib/shopify-mock/fixtures/xml/webhooks.xml +11 -0
- data/shopify-mock.gemspec +2 -1
- data/spec/fixtures_spec.rb +1 -1
- data/spec/mock_spec.rb +15 -0
- data/spec/response_spec.rb +3 -1
- metadata +72 -33
data/.travis.yml
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
rvm: 1.9.2
|
data/README.rdoc
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
=
|
1
|
+
= shopify-mock
|
2
2
|
|
3
3
|
This gem is used for testing Shopify apps without having to actually connect to
|
4
4
|
Shopify to develop the application.
|
@@ -15,48 +15,66 @@ Add the gem to your Gemfile in the appropriate group:
|
|
15
15
|
|
16
16
|
== Enabling / Disabling
|
17
17
|
|
18
|
-
For non Rails apps,
|
19
|
-
access is allowed. In a Rails app,
|
18
|
+
For non Rails apps, shopify-mock is disabled by default, and real-world Internet
|
19
|
+
access is allowed. In a Rails app, shopify-mock is disabled except for in the :test
|
20
20
|
environment.
|
21
21
|
|
22
|
-
To enable / disable
|
22
|
+
To enable / disable shopify-mock manually, set ShopifyAPI::Mock.enabled to true or false:
|
23
23
|
|
24
|
-
ShopifyAPI::Mock.enabled = true
|
24
|
+
ShopifyAPI::Mock.enabled = true # or false to disable
|
25
|
+
ShopifyAPI::Mock.enabled? # => to get the current state
|
25
26
|
|
26
27
|
And to completely disable access to the Internet altogether, or re-enable it:
|
27
28
|
|
28
29
|
ShopifyAPI::Mock.allow_internet = false # or true to re-enable
|
30
|
+
ShopifyAPI::Mock.allow_internet? # => to get the current state
|
29
31
|
|
30
32
|
== Example
|
31
33
|
|
32
34
|
After installing the gem in your Shopify app, load the rails console, and try
|
33
35
|
this quick example:
|
34
36
|
|
35
|
-
rails c
|
36
|
-
|
37
|
-
:002 > order = ShopifyAPI::Session.temp("test", "randomtoken") { ShopifyAPI::Order.first }
|
37
|
+
rails c test
|
38
|
+
order = ShopifyAPI::Session.temp("test", "randomtoken") { ShopifyAPI::Order.first }
|
38
39
|
|
39
40
|
You'll notice that the order was not downloaded from Shopify, but based off of
|
40
|
-
a
|
41
|
+
a shopify-mock fixture found in lib/shopify-mock/fixtures/orders.json
|
41
42
|
|
42
|
-
==
|
43
|
-
|
44
|
-
You have access to the ShopifyMock fixtures from within your app to help with
|
45
|
-
testing. To access a fixture, use ShopifyAPI::Mock::Fixtures:
|
46
|
-
|
47
|
-
ShopifyAPI::Mock::Fixtures.read(:orders) # => contents of orders.json
|
43
|
+
== Responses
|
48
44
|
|
49
|
-
You
|
45
|
+
You have access to all the registered mock responses through ShopifyAPI::Mock::Response
|
50
46
|
|
51
|
-
ShopifyAPI::Mock::
|
52
|
-
ShopifyAPI::Mock::
|
53
|
-
ShopifyAPI::Mock::Fixtures.reset # => reset all the fixtures back to their defaults
|
47
|
+
ShopifyAPI::Mock::Response.all # => array of all registered responses
|
48
|
+
ShopifyAPI::Mock::Response.clear # => clears all the currently registered responses
|
54
49
|
|
55
|
-
|
56
|
-
|
57
|
-
ShopifyAPI::Mock::
|
50
|
+
And you can register your own response:
|
51
|
+
|
52
|
+
ShopifyAPI::Mock::Response.new(:get, "orders/1.xml", "response content")
|
58
53
|
|
54
|
+
== Fixtures
|
59
55
|
|
56
|
+
You have access to the shopify-mock fixtures through ShopifyAPI::Mock::Fixture
|
57
|
+
|
58
|
+
ShopifyAPI::Mock::Fixture.all # => an array of all the fixtures
|
59
|
+
ShopifyAPI::Mock::Fixture.find(:orders, :json) # => returns the orders.json fixture
|
60
|
+
ShopifyAPI::Mock::Fixture.path # => the path to the fixture files
|
61
|
+
|
62
|
+
# to use your own fixture path:
|
63
|
+
ShopifyAPI::Mock::Fixture.path = File.join(Rails.root, 'spec', 'fixtures')
|
64
|
+
ShopifyAPI::Mock.reset # => to reload the fixtures
|
65
|
+
|
66
|
+
A Fixture object has these methods:
|
67
|
+
|
68
|
+
fixture = ShopifyAPI::Mock::Fixture.all.first
|
69
|
+
|
70
|
+
fixture.name # => the name of the fixture, such as :orders
|
71
|
+
fixture.ext # => the extension of the fixture, such as :json, or :xml
|
72
|
+
fixture.data # => the file contents
|
73
|
+
|
74
|
+
# to override the fixture's contents:
|
75
|
+
fixture.data = "new contents" # => use "new contents" for this fixture
|
76
|
+
fixture.data = nil # => resets back to default contents
|
77
|
+
|
60
78
|
== Contributing to shopify-mock
|
61
79
|
|
62
80
|
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
|
data/Rakefile
CHANGED
data/lib/shopify-mock.rb
CHANGED
@@ -45,7 +45,8 @@ module ShopifyAPI
|
|
45
45
|
def reset
|
46
46
|
raise ShopifyAPI::Mock::DisabledError, "cannot reset ShopifyAPI::Mock while it is disabled" \
|
47
47
|
unless ShopifyAPI::Mock.enabled?
|
48
|
-
|
48
|
+
ShopifyAPI::Mock.enabled = false
|
49
|
+
ShopifyAPI::Mock.enabled = true
|
49
50
|
end
|
50
51
|
|
51
52
|
# gets the state of access to the real Internet
|
@@ -76,12 +77,12 @@ module ShopifyAPI
|
|
76
77
|
|
77
78
|
registered_responses = []
|
78
79
|
ShopifyAPI::Mock::Fixture.all.each do |fixture|
|
79
|
-
# register the count fixture for this resource
|
80
|
+
# register the count fixture for this resource, if it exists
|
80
81
|
count_fixture = ShopifyAPI::Mock::Fixture.find(:count, fixture.ext.to_sym)
|
81
82
|
registered_responses << ShopifyAPI::Mock::Response.new(
|
82
83
|
:get, "#{fixture.name.to_s}/count.#{fixture.ext}",
|
83
84
|
count_fixture.data
|
84
|
-
)
|
85
|
+
) unless count_fixture.nil?
|
85
86
|
# register the resource fixture
|
86
87
|
registered_responses << ShopifyAPI::Mock::Response.new(
|
87
88
|
:get, "#{fixture.name.to_s}.#{fixture.ext.to_s}",
|
@@ -43,6 +43,8 @@ module ShopifyAPI
|
|
43
43
|
# data = fixture.data # => the contents of "./orders.xml"
|
44
44
|
# fixture.data = "hello world"
|
45
45
|
# data = fixture.data # => "hello world"
|
46
|
+
# @example Set contents of a fixture back to their default
|
47
|
+
# fixture.data = nil
|
46
48
|
# @api public
|
47
49
|
def data=(value)
|
48
50
|
@data = value
|
@@ -66,7 +68,14 @@ module ShopifyAPI
|
|
66
68
|
# ShopifyAPI::Mock::Fixture.all
|
67
69
|
# @api public
|
68
70
|
def all
|
69
|
-
|
71
|
+
# get a list of all the fixture files
|
72
|
+
files = []
|
73
|
+
Dir[File.join(ShopifyAPI::Mock::Fixture.path, "**", "*")].each do |f|
|
74
|
+
files << f unless File.directory? f
|
75
|
+
end
|
76
|
+
|
77
|
+
# map files to fixtures
|
78
|
+
files.map do |file_name|
|
70
79
|
fixture_name = File.basename(file_name)
|
71
80
|
@cache[fixture_name] ||= Fixture.new(file_name)
|
72
81
|
end
|
@@ -83,7 +92,7 @@ module ShopifyAPI
|
|
83
92
|
# @api public
|
84
93
|
def find(name, ext = :json)
|
85
94
|
fixture_name = "#{name.to_s}.#{ext.to_s}"
|
86
|
-
file_name = File.join(self.path, fixture_name)
|
95
|
+
file_name = File.join(self.path, ext.to_s, fixture_name)
|
87
96
|
return nil unless File.exists? file_name
|
88
97
|
@cache[fixture_name] ||= Fixture.new(file_name)
|
89
98
|
end
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/lib/shopify-mock/fixtures/{product_search_engines.json → json/product_search_engines.json}
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -0,0 +1,29 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<articles type="array">
|
3
|
+
<article>
|
4
|
+
<body-html>I have no idea what to write about, but it's going to rock!</body-html>
|
5
|
+
<created-at type="datetime">2008-12-31T19:00:00-05:00</created-at>
|
6
|
+
<author>John</author>
|
7
|
+
<title>Some crazy article I'm coming up with</title>
|
8
|
+
<updated-at type="datetime">2009-01-31T19:00:00-05:00</updated-at>
|
9
|
+
<blog-id type="integer">241253187</blog-id>
|
10
|
+
<summary-html nil="true"></summary-html>
|
11
|
+
<id type="integer">989034056</id>
|
12
|
+
<user-id type="integer" nil="true"></user-id>
|
13
|
+
<published-at type="datetime" nil="true"></published-at>
|
14
|
+
<tags>Mystery</tags>
|
15
|
+
</article>
|
16
|
+
<article>
|
17
|
+
<body-html><p>Do <em>you</em> have an <strong>IPod</strong> yet?</p></body-html>
|
18
|
+
<created-at type="datetime">2008-07-31T20:00:00-04:00</created-at>
|
19
|
+
<author>Dennis</author>
|
20
|
+
<title>get on the train now</title>
|
21
|
+
<updated-at type="datetime">2008-07-31T20:00:00-04:00</updated-at>
|
22
|
+
<blog-id type="integer">241253187</blog-id>
|
23
|
+
<summary-html nil="true"></summary-html>
|
24
|
+
<id type="integer">134645308</id>
|
25
|
+
<user-id type="integer">799407056</user-id>
|
26
|
+
<published-at type="datetime">2008-07-31T20:00:00-04:00</published-at>
|
27
|
+
<tags>Announcing</tags>
|
28
|
+
</article>
|
29
|
+
</articles>
|
@@ -0,0 +1,135 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<assets type="array">
|
3
|
+
<asset>
|
4
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
5
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
6
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-body-green.gif?1</public-url>
|
7
|
+
<key>assets/bg-body-green.gif</key>
|
8
|
+
</asset>
|
9
|
+
<asset>
|
10
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
11
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
12
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-body-orange.gif?1</public-url>
|
13
|
+
<key>assets/bg-body-orange.gif</key>
|
14
|
+
</asset>
|
15
|
+
<asset>
|
16
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
17
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
18
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-body-pink.gif?1</public-url>
|
19
|
+
<key>assets/bg-body-pink.gif</key>
|
20
|
+
</asset>
|
21
|
+
<asset>
|
22
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
23
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
24
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-body.gif?1</public-url>
|
25
|
+
<key>assets/bg-body.gif</key>
|
26
|
+
</asset>
|
27
|
+
<asset>
|
28
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
29
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
30
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-content.gif?1</public-url>
|
31
|
+
<key>assets/bg-content.gif</key>
|
32
|
+
</asset>
|
33
|
+
<asset>
|
34
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
35
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
36
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-footer.gif?1</public-url>
|
37
|
+
<key>assets/bg-footer.gif</key>
|
38
|
+
</asset>
|
39
|
+
<asset>
|
40
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
41
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
42
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-main.gif?1</public-url>
|
43
|
+
<key>assets/bg-main.gif</key>
|
44
|
+
</asset>
|
45
|
+
<asset>
|
46
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
47
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
48
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/bg-sidebar.gif?1</public-url>
|
49
|
+
<key>assets/bg-sidebar.gif</key>
|
50
|
+
</asset>
|
51
|
+
<asset>
|
52
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
53
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
54
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/shop.css?1</public-url>
|
55
|
+
<key>assets/shop.css</key>
|
56
|
+
</asset>
|
57
|
+
<asset>
|
58
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
59
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
60
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/shop.css.liquid?1</public-url>
|
61
|
+
<key>assets/shop.css.liquid</key>
|
62
|
+
</asset>
|
63
|
+
<asset>
|
64
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
65
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
66
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/shop.js?1</public-url>
|
67
|
+
<key>assets/shop.js</key>
|
68
|
+
</asset>
|
69
|
+
<asset>
|
70
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
71
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
72
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/sidebar-devider.gif?1</public-url>
|
73
|
+
<key>assets/sidebar-devider.gif</key>
|
74
|
+
</asset>
|
75
|
+
<asset>
|
76
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
77
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
78
|
+
<public-url>http://static.shopify.com/s/files/1/6909/3384/t/1/assets/sidebar-menu.jpg?1</public-url>
|
79
|
+
<key>assets/sidebar-menu.jpg</key>
|
80
|
+
</asset>
|
81
|
+
<asset>
|
82
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
83
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
84
|
+
<public-url nil="true"></public-url>
|
85
|
+
<key>config/settings.html</key>
|
86
|
+
</asset>
|
87
|
+
<asset>
|
88
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
89
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
90
|
+
<public-url nil="true"></public-url>
|
91
|
+
<key>layout/theme.liquid</key>
|
92
|
+
</asset>
|
93
|
+
<asset>
|
94
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
95
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
96
|
+
<public-url nil="true"></public-url>
|
97
|
+
<key>templates/article.liquid</key>
|
98
|
+
</asset>
|
99
|
+
<asset>
|
100
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
101
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
102
|
+
<public-url nil="true"></public-url>
|
103
|
+
<key>templates/blog.liquid</key>
|
104
|
+
</asset>
|
105
|
+
<asset>
|
106
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
107
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
108
|
+
<public-url nil="true"></public-url>
|
109
|
+
<key>templates/cart.liquid</key>
|
110
|
+
</asset>
|
111
|
+
<asset>
|
112
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
113
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
114
|
+
<public-url nil="true"></public-url>
|
115
|
+
<key>templates/collection.liquid</key>
|
116
|
+
</asset>
|
117
|
+
<asset>
|
118
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
119
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
120
|
+
<public-url nil="true"></public-url>
|
121
|
+
<key>templates/index.liquid</key>
|
122
|
+
</asset>
|
123
|
+
<asset>
|
124
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
125
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
126
|
+
<public-url nil="true"></public-url>
|
127
|
+
<key>templates/page.liquid</key>
|
128
|
+
</asset>
|
129
|
+
<asset>
|
130
|
+
<created-at type="datetime">2010-07-12T15:31:50-04:00</created-at>
|
131
|
+
<updated-at type="datetime">2010-07-12T15:31:50-04:00</updated-at>
|
132
|
+
<public-url nil="true"></public-url>
|
133
|
+
<key>templates/product.liquid</key>
|
134
|
+
</asset>
|
135
|
+
</assets>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<blogs type="array">
|
3
|
+
<blog>
|
4
|
+
<created-at type="datetime">2011-09-06T11:52:08-04:00</created-at>
|
5
|
+
<handle>apple-blog</handle>
|
6
|
+
<template-suffix nil="true"></template-suffix>
|
7
|
+
<title>Mah Blog</title>
|
8
|
+
<updated-at type="datetime">2006-02-01T19:00:00-05:00</updated-at>
|
9
|
+
<feedburner-location nil="true"></feedburner-location>
|
10
|
+
<id type="integer">241253187</id>
|
11
|
+
<feedburner nil="true"></feedburner>
|
12
|
+
<commentable>no</commentable>
|
13
|
+
</blog>
|
14
|
+
</blogs>
|
@@ -0,0 +1,10 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<collect>
|
3
|
+
<position type="integer">2</position>
|
4
|
+
<created-at type="datetime">2011-09-06T11:53:10-04:00</created-at>
|
5
|
+
<product-id type="integer">921728736</product-id>
|
6
|
+
<featured type="boolean">false</featured>
|
7
|
+
<updated-at type="datetime">2011-09-06T11:53:10-04:00</updated-at>
|
8
|
+
<id type="integer">1012587629</id>
|
9
|
+
<collection-id type="integer">841564295</collection-id>
|
10
|
+
</collect>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<comments type="array">
|
3
|
+
<comment>
|
4
|
+
<body-html><p>Hi author, I really <em>like</em> what you're doing there.</p></body-html>
|
5
|
+
<created-at type="datetime">2011-09-06T11:52:08-04:00</created-at>
|
6
|
+
<author>Soleone</author>
|
7
|
+
<body>Hi author, I really _like_ what you're doing there.</body>
|
8
|
+
<updated-at type="datetime">2011-09-06T11:52:08-04:00</updated-at>
|
9
|
+
<blog-id type="integer">241253187</blog-id>
|
10
|
+
<id type="integer">653537639</id>
|
11
|
+
<article-id type="integer">134645308</article-id>
|
12
|
+
<ip>127.0.0.1</ip>
|
13
|
+
<published-at type="datetime" nil="true"></published-at>
|
14
|
+
<user-agent>Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_4; en-us) AppleWebKit/525.18 (KHTML, like Gecko) Version/3.1.2 Safari/525.20.1</user-agent>
|
15
|
+
<status>unapproved</status>
|
16
|
+
<email>sole@one.de</email>
|
17
|
+
</comment>
|
18
|
+
</comments>
|