howcast 0.4.15 → 0.4.16

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,3 +1,7 @@
1
+ == 0.4.16 2010-03-16
2
+
3
+ * Add permalink to category object
4
+
1
5
  == 0.4.15 2010-03-15
2
6
 
3
7
  * Add categories api support
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.15
1
+ 0.4.16
data/howcast.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{howcast}
8
- s.version = "0.4.15"
8
+ s.version = "0.4.16"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Jingshen Jimmy Zhang", "Ian Smith-Heisters"]
12
- s.date = %q{2010-03-15}
12
+ s.date = %q{2010-03-16}
13
13
  s.description = %q{ Howcast offers an Application Programming Interface (API) which allows
14
14
  developers to build applications that interface with Howcast. The Howcast
15
15
  API is RESTful (REpresentational State Transfer) and users of this API will
@@ -31,8 +31,6 @@ Gem::Specification.new do |s|
31
31
  "README.markdown",
32
32
  "Rakefile",
33
33
  "VERSION",
34
- "howcast-0.4.13.gem",
35
- "howcast-0.4.14.gem",
36
34
  "howcast.gemspec",
37
35
  "lib/howcast.rb",
38
36
  "lib/howcast/client.rb",
@@ -24,7 +24,7 @@
24
24
  class Howcast::Client
25
25
  class Category
26
26
  extend WatchAttrAccessors
27
- attr_accessor :id, :name, :parent_id, :parents
27
+ attr_accessor :id, :name, :parent_id, :parents, :permalink
28
28
 
29
29
  # Creates a new Category object which is used to encapsulate all the attributes available
30
30
  # from the Howcast Category API. The parents attribute will be an array of category
@@ -98,7 +98,7 @@ class Howcast::Client
98
98
  node_name = attribute.to_s.gsub("_", "-") # xml schema uses hyphens for spaces, but ruby uses underscores
99
99
  hash[attribute] = !xml.at(node_name).nil? ? xml.at(node_name).inner_text.strip : ""
100
100
  end
101
- hash[:parents] = (xml.at('parents')/:category).map{ |c| {:id => c['id'], :name => c.inner_html }} unless xml.at('parents').nil?
101
+ hash[:parents] = (xml.at('parents')/:category).map{ |c| {:id => c.at('id').inner_text.strip, :name => c.at('name').inner_text.strip, :permalink => c.at('permalink').inner_text.strip }} unless xml.at('parents').nil?
102
102
  hash.values.all?{|v| v==""} ? nil : Category.new(hash)
103
103
  end
104
104
  end
@@ -40,7 +40,11 @@ describe Howcast::Client, "category" do
40
40
  end
41
41
 
42
42
  it "should set the parents metadata hash" do
43
- @hc.category(2).parents.should == [{:id => "1571", :name => "Travel"}, {:id => "1584", :name => "African Travel"}]
43
+ @hc.category(2).parents.should == [{:id => "1571", :name => "Travel", :permalink => "http://www.howcast.com/categories/1571-Travel"}, {:id => "1584", :name => "African Travel", :permalink => "http://www.howcast.com/categories/1584-African-Travel"}]
44
+ end
45
+
46
+ it "should set the permalink" do
47
+ @hc.category(2).permalink.should == "http://www.howcast.com/categories/1585-General-African-Travel"
44
48
  end
45
49
  end
46
50
 
@@ -43,30 +43,24 @@ module XmlFixturesHelper
43
43
  <?xml version="1.0" encoding="UTF-8"?>
44
44
  <howcast version="0.1">
45
45
  <category>
46
- <id>1255</id>
46
+ <id>1585</id>
47
47
  <name>General African Travel</name>
48
48
  <parent-id>1584</parent-id>
49
+ <permalink>http://www.howcast.com/categories/1585-General-African-Travel</permalink>
49
50
  <parents>
50
- <category id="1571">Travel</category>
51
- <category parent_id="1571" id="1584">African Travel</category>
52
- </parents>
53
- <subcategories>
54
- <category>
55
- <id>1265</id>
56
- <name>African Travel</name>
57
- </category>
58
51
  <category>
59
- <id>1289</id>
60
- <name>European Travel</name>
52
+ <id>1571</id>
53
+ <name>Travel</name>
54
+ <permalink>http://www.howcast.com/categories/1571-Travel</permalink>
61
55
  </category>
62
56
  <category>
63
- <id>1256</id>
64
- <name>General Travel</name>
65
- </category>
66
- <category>
67
- <id>1311</id>
68
- <name>General U.S. Travel</name>
57
+ <id>1584</id>
58
+ <name>African Travel</name>
59
+ <parent-id>1571</parent-id>
60
+ <permalink>http://www.howcast.com/categories/1584-African-Travel</permalink>
69
61
  </category>
62
+ </parents>
63
+ <subcategories>
70
64
  </subcategories>
71
65
  </category>
72
66
  </howcast>
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 4
8
- - 15
9
- version: 0.4.15
8
+ - 16
9
+ version: 0.4.16
10
10
  platform: ruby
11
11
  authors:
12
12
  - Jingshen Jimmy Zhang
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-03-15 00:00:00 -07:00
18
+ date: 2010-03-16 00:00:00 -07:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -57,8 +57,6 @@ files:
57
57
  - README.markdown
58
58
  - Rakefile
59
59
  - VERSION
60
- - howcast-0.4.13.gem
61
- - howcast-0.4.14.gem
62
60
  - howcast.gemspec
63
61
  - lib/howcast.rb
64
62
  - lib/howcast/client.rb
data/howcast-0.4.13.gem DELETED
Binary file
data/howcast-0.4.14.gem DELETED
Binary file