razsell 0.0.5 → 0.0.6

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/README.rdoc CHANGED
@@ -1,6 +1,6 @@
1
1
  = razsell
2
2
 
3
- A feed parser for Zazzle.com written in Ruby. Raszell allows you to query zazzle for information on products.
3
+ A feed parser for Zazzle.com written in Ruby. Razsell allows you to query zazzle for information on products.
4
4
 
5
5
  == Copyright
6
6
 
data/Rakefile CHANGED
@@ -6,13 +6,14 @@ begin
6
6
  Jeweler::Tasks.new do |gem|
7
7
  gem.name = "razsell"
8
8
  gem.summary = %Q{A gem for getting info about products on a website that has a similar name}
9
+ gem.description = %Q{Queries Zazzle RSS feed for data.}
9
10
  gem.email = "jamal.hansen@gmail.com"
10
11
  gem.homepage = "http://github.com/rubyyot/razsell"
11
12
  gem.authors = ["Jamal Hansen"]
12
13
  gem.add_dependency('hpricot', '>= 0.8.1')
13
14
  gem.add_development_dependency('cucumber', '>= 0.3.11')
14
15
  gem.add_development_dependency('mocha')
15
- gem.add_development_dependency('technicalpickles-shoulda')
16
+ gem.add_development_dependency('shoulda')
16
17
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
17
18
  end
18
19
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.5
1
+ 0.0.6
@@ -0,0 +1,15 @@
1
+ <rss version="2.0" xmlns:opensearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:media="http://search.yahoo.com/mrss/">
2
+ <channel>
3
+ <title>Kung Fu Tees: Zazzle.com Gallery: Products </title>
4
+ <link>http://feed.zazzle.com/z.2/api/find.aspx?ft=rss&amp;ch=kungfutees&amp;ou=/kungfutees/rss</link>
5
+ <description></description>
6
+ <language>en-us</language>
7
+ <pubDate>Sat, 13 Feb 2010 06:58:44 GMT</pubDate>
8
+ <ttl>60</ttl>
9
+ <opensearch:totalResults>3</opensearch:totalResults>
10
+ <opensearch:startIndex>1</opensearch:startIndex>
11
+ <opensearch:itemsPerPage>15</opensearch:itemsPerPage>
12
+ <opensearch:Query role="request" searchTerms="" />
13
+ <!--... items ... -->
14
+ </channel>
15
+ </rss>
@@ -0,0 +1,36 @@
1
+ <item>
2
+ <guid isPermaLink="false">http://www.zazzle.com/rockstar_coder_mug-168427986526885635?gl=kungfutees</guid>
3
+ <pubDate>Sat, 02 May 2009 13:09:16 GMT</pubDate>
4
+ <title><![CDATA[Rockstar Coder Mug]]></title>
5
+ <link>http://www.zazzle.com/rockstar_coder_mug-168427986526885635?gl=kungfutees</link>
6
+ <author>kungfutees</author>
7
+ <description><![CDATA[
8
+ ><div class="gridCell " id="_assetCell1">
9
+ <div style="position:relative" class="clearfix">
10
+ <a href="http://www.zazzle.com/rockstar_coder_mug-168427986526885635?gl=kungfutees" id="_assetCell1-imageLink" class="realviewLink"
11
+ ><img id="_assetCell1-preview" src="http://rlv.zcache.com/rockstar_coder_mug-p1684279865268856352obaq_152.jpg" alt="Rockstar Coder Mug" title="Rockstar Coder Mug by kungfutees" class="realviewImage"
12
+ /></a>
13
+ <div id="_assetCell1-productTypeIcon" class="mugIcon"></div>
14
+ <a href="javascript://" id="_assetCell1-nextviewLink" class="nextviewLink"></a>
15
+ </div>
16
+ <div class="gridCellInfo" id="_assetCell1-info">
17
+ <a
18
+ href="http://www.zazzle.com/rockstar_coder_mug-168427986526885635?gl=kungfutees"
19
+ id="_assetCell1-title"
20
+ class="productTitle" title="Rockstar Coder Mug"
21
+ >Rockstar Coder Mug</a><br />
22
+ <span class="byLine">by <a href="javascript://" id="_assetCell1-contributorLink">kungfutees</a><br /></span>
23
+ <span class="extraInfo">
24
+ <br />
25
+
26
+ </span>
27
+ </div>
28
+ </div>]]>
29
+ </description>
30
+ <media:title><![CDATA[Rockstar Coder Mug]]></media:title>
31
+ <media:description><![CDATA[Want to show your inner rockstar in the break room? Here is the perfect way.]]></media:description>
32
+ <media:thumbnail url="http://rlv.zcache.com/rockstar_coder_mug-p1684279865268856352obaq_125.jpg" />
33
+ <media:content url="http://rlv.zcache.com/rockstar_coder_mug-p1684279865268856352obaq_500.jpg" />
34
+ <media:keywords>rockstar, coder, ror, ruby, on, rails</media:keywords>
35
+ <media:rating scheme="urn:mpaa">g</media:rating>
36
+ </item>
@@ -1,5 +1,4 @@
1
1
  require 'razsell/http_service'
2
- require 'razsell/product_line_parser'
3
2
 
4
3
  module Razsell
5
4
  class Engine
@@ -19,15 +18,6 @@ module Razsell
19
18
  results
20
19
  end
21
20
 
22
- def product_lines_for artist
23
- url = "http://www.zazzle.com/#{artist}?src=razsell"
24
-
25
- document = @http_service.get url
26
-
27
- parser = ProductLineParser.new
28
- parser.parse document
29
- end
30
-
31
21
  def get_http_service opts
32
22
  opts[:http_service] ? opts[:http_service] : Razsell::HttpService.new
33
23
  end
data/lib/razsell/item.rb CHANGED
@@ -12,7 +12,7 @@ module Razsell
12
12
  values.each_key do |key|
13
13
  define_method "#{key.to_s}" do
14
14
  @values[key]
15
- end\
15
+ end
16
16
  end
17
17
  end
18
18
  end
data/razsell.gemspec CHANGED
@@ -5,11 +5,12 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{razsell}
8
- s.version = "0.0.5"
8
+ s.version = "0.0.6"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jamal Hansen"]
12
- s.date = %q{2010-01-10}
12
+ s.date = %q{2010-02-13}
13
+ s.description = %q{Queries Zazzle RSS feed for data.}
13
14
  s.email = %q{jamal.hansen@gmail.com}
14
15
  s.extra_rdoc_files = [
15
16
  "LICENSE",
@@ -23,9 +24,9 @@ Gem::Specification.new do |s|
23
24
  "Rakefile",
24
25
  "VERSION",
25
26
  "docs/RSSGuide1.02.pdf",
26
- "features/product_lines.feature",
27
+ "docs/feed sample.txt",
28
+ "docs/item sample.txt",
27
29
  "features/razsell.feature",
28
- "features/step_definitions/product_line_steps.rb",
29
30
  "features/step_definitions/razsell_steps.rb",
30
31
  "features/support/env.rb",
31
32
  "features/support/razsell_mixed_in.rb",
@@ -38,8 +39,6 @@ Gem::Specification.new do |s|
38
39
  "lib/razsell/engine.rb",
39
40
  "lib/razsell/http_service.rb",
40
41
  "lib/razsell/item.rb",
41
- "lib/razsell/product_line.rb",
42
- "lib/razsell/product_line_parser.rb",
43
42
  "lib/razsell/query.rb",
44
43
  "lib/razsell/results.rb",
45
44
  "razsell.gemspec",
@@ -47,9 +46,7 @@ Gem::Specification.new do |s|
47
46
  "test/fixtures.rb",
48
47
  "test/fixtures/page_1.rss",
49
48
  "test/fixtures/page_2.rss",
50
- "test/fixtures/productlines.htm",
51
49
  "test/fixtures/rockstar.rss",
52
- "test/product_line_parser_test.rb",
53
50
  "test/product_types_test.rb",
54
51
  "test/query_test.rb",
55
52
  "test/razsell_test.rb",
@@ -66,7 +63,6 @@ Gem::Specification.new do |s|
66
63
  "test/fixtures.rb",
67
64
  "test/test_helper.rb",
68
65
  "test/results_test.rb",
69
- "test/product_line_parser_test.rb",
70
66
  "test/razsell_test.rb",
71
67
  "test/query_test.rb",
72
68
  "test/engine_test.rb"
@@ -80,18 +76,18 @@ Gem::Specification.new do |s|
80
76
  s.add_runtime_dependency(%q<hpricot>, [">= 0.8.1"])
81
77
  s.add_development_dependency(%q<cucumber>, [">= 0.3.11"])
82
78
  s.add_development_dependency(%q<mocha>, [">= 0"])
83
- s.add_development_dependency(%q<technicalpickles-shoulda>, [">= 0"])
79
+ s.add_development_dependency(%q<shoulda>, [">= 0"])
84
80
  else
85
81
  s.add_dependency(%q<hpricot>, [">= 0.8.1"])
86
82
  s.add_dependency(%q<cucumber>, [">= 0.3.11"])
87
83
  s.add_dependency(%q<mocha>, [">= 0"])
88
- s.add_dependency(%q<technicalpickles-shoulda>, [">= 0"])
84
+ s.add_dependency(%q<shoulda>, [">= 0"])
89
85
  end
90
86
  else
91
87
  s.add_dependency(%q<hpricot>, [">= 0.8.1"])
92
88
  s.add_dependency(%q<cucumber>, [">= 0.3.11"])
93
89
  s.add_dependency(%q<mocha>, [">= 0"])
94
- s.add_dependency(%q<technicalpickles-shoulda>, [">= 0"])
90
+ s.add_dependency(%q<shoulda>, [">= 0"])
95
91
  end
96
92
  end
97
93
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: razsell
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jamal Hansen
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2010-01-10 00:00:00 -06:00
12
+ date: 2010-02-13 00:00:00 -06:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -43,7 +43,7 @@ dependencies:
43
43
  version: "0"
44
44
  version:
45
45
  - !ruby/object:Gem::Dependency
46
- name: technicalpickles-shoulda
46
+ name: shoulda
47
47
  type: :development
48
48
  version_requirement:
49
49
  version_requirements: !ruby/object:Gem::Requirement
@@ -52,7 +52,7 @@ dependencies:
52
52
  - !ruby/object:Gem::Version
53
53
  version: "0"
54
54
  version:
55
- description:
55
+ description: Queries Zazzle RSS feed for data.
56
56
  email: jamal.hansen@gmail.com
57
57
  executables: []
58
58
 
@@ -69,9 +69,9 @@ files:
69
69
  - Rakefile
70
70
  - VERSION
71
71
  - docs/RSSGuide1.02.pdf
72
- - features/product_lines.feature
72
+ - docs/feed sample.txt
73
+ - docs/item sample.txt
73
74
  - features/razsell.feature
74
- - features/step_definitions/product_line_steps.rb
75
75
  - features/step_definitions/razsell_steps.rb
76
76
  - features/support/env.rb
77
77
  - features/support/razsell_mixed_in.rb
@@ -84,8 +84,6 @@ files:
84
84
  - lib/razsell/engine.rb
85
85
  - lib/razsell/http_service.rb
86
86
  - lib/razsell/item.rb
87
- - lib/razsell/product_line.rb
88
- - lib/razsell/product_line_parser.rb
89
87
  - lib/razsell/query.rb
90
88
  - lib/razsell/results.rb
91
89
  - razsell.gemspec
@@ -93,9 +91,7 @@ files:
93
91
  - test/fixtures.rb
94
92
  - test/fixtures/page_1.rss
95
93
  - test/fixtures/page_2.rss
96
- - test/fixtures/productlines.htm
97
94
  - test/fixtures/rockstar.rss
98
- - test/product_line_parser_test.rb
99
95
  - test/product_types_test.rb
100
96
  - test/query_test.rb
101
97
  - test/razsell_test.rb
@@ -134,7 +130,6 @@ test_files:
134
130
  - test/fixtures.rb
135
131
  - test/test_helper.rb
136
132
  - test/results_test.rb
137
- - test/product_line_parser_test.rb
138
133
  - test/razsell_test.rb
139
134
  - test/query_test.rb
140
135
  - test/engine_test.rb
@@ -1,13 +0,0 @@
1
- Feature: Get Product Lines
2
- In order to better organize my products
3
- A user of razsell
4
- Will ask for a list of product lines
5
-
6
- Scenario: Getting all product lines for a user
7
- Given the artist "KungFuTees" on Zazzle
8
- When I ask for a list of the artists product lines
9
- Then I should get 3 lines
10
- And one should be named "Cheeze" with an id of "196854021783912655"
11
- And one should be named "New Products" with an id of "196596454716712290"
12
- And one should be named "Smim" with an id of "196983228798280961"
13
-
@@ -1,28 +0,0 @@
1
-
2
- Given /^the artist "([^\"]*)" on Zazzle$/ do |artist|
3
- @artist = artist
4
- @sut = RazsellMixedIn.new
5
- end
6
-
7
- When /^I ask for a list of the artists product lines$/ do
8
- http_service = Razsell::HttpService.new
9
- http_service.expects(:get).once.returns(feed("productlines"))
10
-
11
- @product_lines = @sut.product_lines_for(@artist, :http_service => http_service)
12
- end
13
-
14
- Then /^I should get 3 lines$/ do
15
- assert_equal 3, @product_lines.length
16
- end
17
-
18
- Then /^one should be named "([^\"]*)" with an id of "([^\"]*)"$/ do |name, id|
19
- @found = false
20
-
21
- @product_lines.each do |line|
22
- if line.id == id && line.name == name
23
- @found = true
24
- end
25
- end
26
-
27
- assert @found
28
- end
@@ -1,14 +0,0 @@
1
- module Razsell
2
- class ProductLine
3
- attr_accessor :id, :name
4
-
5
- def initialize href, name
6
- @id = strip_id(href)
7
- @name = name
8
- end
9
-
10
- def strip_id href
11
- href.split("cg=")[1]
12
- end
13
- end
14
- end
@@ -1,19 +0,0 @@
1
- require 'hpricot'
2
- require 'razsell/product_line'
3
-
4
- module Razsell
5
- class ProductLineParser
6
- def parse document
7
- return [] unless document
8
-
9
- elements = get_elements document
10
- elements.map { |e| Razsell::ProductLine.new(e.attributes['href'] , e.inner_html) }
11
- end
12
-
13
- def get_elements document
14
- doc = Hpricot(document)
15
-
16
- (doc/"#page_module8/ul/li/a")
17
- end
18
- end
19
- end