datacatalog 0.3.6 → 0.3.7

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -5,7 +5,7 @@ begin
5
5
  require 'jeweler'
6
6
  Jeweler::Tasks.new do |gem|
7
7
  gem.name = "datacatalog"
8
- gem.version = '0.3.6'
8
+ gem.version = '0.3.7'
9
9
  gem.rubyforge_project = "datacatalog"
10
10
  gem.summary = %Q{Client for the National Data Catalog API}
11
11
  gem.description = %Q{A Ruby client library for the National Data Catalog API}
data/datacatalog.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{datacatalog}
8
- s.version = "0.3.6"
8
+ s.version = "0.3.7"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Luigi Montanez", "David James"]
12
- s.date = %q{2009-11-17}
12
+ s.date = %q{2009-12-01}
13
13
  s.description = %q{A Ruby client library for the National Data Catalog API}
14
14
  s.email = %q{luigi@sunlightfoundation.com}
15
15
  s.extra_rdoc_files = [
data/lib/base.rb CHANGED
@@ -78,7 +78,13 @@ module DataCatalog
78
78
  end
79
79
 
80
80
  def self.filterize(conditions)
81
- conditions.map { |k, v| %(#{k}:"#{v}") }.join(" ")
81
+ conditions.map do |k, v|
82
+ "#{k}" + if v.is_a?(Regexp)
83
+ %(:"#{v.source}")
84
+ else
85
+ %(="#{v}")
86
+ end
87
+ end.join(" ")
82
88
  end
83
89
 
84
90
  def method_missing(method_name, *args)
@@ -2,7 +2,7 @@ module DataCatalog
2
2
 
3
3
  class Favorite < Base
4
4
 
5
- def self.all(conditions={})
5
+ def self.all(conditions={})
6
6
  many(http_get(uri, :query => query_hash(conditions)))
7
7
  end
8
8
 
@@ -5,11 +5,11 @@ module DataCatalog
5
5
  def self.all(conditions={})
6
6
  many(http_get(uri, :query => query_hash(conditions)))
7
7
  end
8
-
8
+
9
9
  def self.search(term)
10
- many(http_get(uri, :query => {:search => term.downcase}))
10
+ many(http_get(uri, :query => { :search => term.downcase }))
11
11
  end
12
-
12
+
13
13
  def self.create(params={})
14
14
  one(http_post(uri, :body => params))
15
15
  end
@@ -17,21 +17,21 @@ module DataCatalog
17
17
  def self.destroy(id)
18
18
  one(http_delete(uri(id)))
19
19
  end
20
-
21
- def self.first(conditions= {})
20
+
21
+ def self.first(conditions={})
22
22
  one(http_get(uri, :query => query_hash(conditions)).first)
23
23
  end
24
24
 
25
25
  def self.get(id)
26
26
  one(http_get(uri(id)))
27
27
  end
28
-
28
+
29
29
  def self.update(id, params={})
30
30
  one(http_put(uri(id), :body => params))
31
31
  end
32
32
 
33
33
  # == Helpers
34
-
34
+
35
35
  def self.uri(id=nil)
36
36
  "/sources/#{id}"
37
37
  end
data/spec/base_spec.rb CHANGED
@@ -127,14 +127,18 @@ describe Base do
127
127
  end
128
128
 
129
129
  describe ".filterize" do
130
- it "should work with 1 param" do
131
- %(name:"John Doe").should == Base.filterize(:name => "John Doe")
130
+ it "should work with 1 string param" do
131
+ %(name="John Doe").should == Base.filterize(:name => "John Doe")
132
132
  end
133
133
 
134
- it "should work with 2 params" do
134
+ it "should work with 1 regex param" do
135
+ %(name:"John Doe").should == Base.filterize(:name => /John Doe/)
136
+ end
137
+
138
+ it "should work with 2 string params" do
135
139
  [
136
- %(zip:"20036" name:"John Doe"),
137
- %(name:"John Doe" zip:"20036")
140
+ %(zip="20036" name="John Doe"),
141
+ %(name="John Doe" zip="20036")
138
142
  ].should include(Base.filterize(:name => "John Doe", :zip => "20036"))
139
143
  end
140
144
  end
@@ -7,12 +7,16 @@ describe Favorite do
7
7
  setup_api
8
8
  clean_slate
9
9
 
10
- @user = User.create(:name => "Ted Smith",
11
- :email => "ted@email.com")
10
+ @user = User.create(
11
+ :name => "Ted Smith",
12
+ :email => "ted@email.com"
13
+ )
12
14
 
13
- @source = Source.create(:title => "Some FCC Data",
14
- :url => "http://fcc.gov/somedata.csv",
15
- :source_type => "dataset")
15
+ @source = Source.create(
16
+ :title => "Some FCC Data",
17
+ :url => "http://fcc.gov/somedata.csv",
18
+ :source_type => "dataset"
19
+ )
16
20
 
17
21
  DataCatalog.with_key(@user.primary_api_key) do
18
22
  @favorite = Favorite.create(:source_id => @source.id)
@@ -22,7 +26,7 @@ describe Favorite do
22
26
 
23
27
  describe ".create" do
24
28
 
25
- it "should create a favorite when valid params are passed in" do
29
+ it "should create a favorite when valid params are passed in" do
26
30
  refreshed_user = User.get(@user.id)
27
31
  refreshed_user.favorites.first.title.should == "Some FCC Data"
28
32
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: datacatalog
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 0.3.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luigi Montanez
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2009-11-17 00:00:00 -05:00
13
+ date: 2009-12-01 00:00:00 -05:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency