jchris-couchrest 0.7.99 → 0.8.0

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/lib/couchrest.rb CHANGED
@@ -3,6 +3,7 @@ require 'json'
3
3
  require 'rest_client'
4
4
 
5
5
  require File.dirname(__FILE__) + '/database'
6
+ require File.dirname(__FILE__) + '/pager'
6
7
 
7
8
  class CouchRest
8
9
  attr_accessor :uri
data/lib/database.rb CHANGED
@@ -31,7 +31,12 @@ class CouchRest
31
31
  url = CouchRest.paramify_url "#{@root}/_search", params
32
32
  CouchRest.get url
33
33
  end
34
-
34
+ # experimental
35
+ def action action, params = nil
36
+ url = CouchRest.paramify_url "#{@root}/_action/#{action}", params
37
+ CouchRest.get url
38
+ end
39
+
35
40
  def get id
36
41
  slug = CGI.escape(id)
37
42
  CouchRest.get "#{@root}/#{slug}"
data/script/couchdir CHANGED
@@ -40,7 +40,11 @@ end
40
40
 
41
41
  puts attachments.keys.inspect
42
42
 
43
- doc = @db.get(dirname) rescue nil
43
+ begin
44
+ doc = @db.get(dirname)
45
+ rescue RestClient::Request::RequestFailed
46
+ doc = nil
47
+ end
44
48
 
45
49
  # puts "get: #{doc.inspect}"
46
50
 
data/script/couchview CHANGED
@@ -112,7 +112,11 @@ when "push" # files to views
112
112
  dviews.delete("#{view}-reduce") unless dviews["#{view}-reduce"]["reduce"]
113
113
  end
114
114
  # save them to the db
115
- view = db.get("_design/#{design}") rescue nil
115
+ begin
116
+ view = db.get("_design/#{design}")
117
+ rescue RestClient::Request::RequestFailed
118
+ view = nil
119
+ end
116
120
  if (view && view['views'] == dviews)
117
121
  puts "no change to _design/#{design}. skipping..."
118
122
  else
@@ -1,12 +1,13 @@
1
- require File.dirname(__FILE__) + '/../lib/couchrest'
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
2
 
3
3
  describe CouchRest do
4
4
 
5
5
  before(:each) do
6
- @cr = CouchRest.new("http://localhost:5984")
7
- @db = @cr.database('couchrest-test')
6
+ @cr = CouchRest.new(COUCHHOST)
8
7
  begin
9
- @db.delete!
8
+ @db = @cr.database(TESTDB)
9
+ @db.delete!
10
+
10
11
  rescue RestClient::Request::RequestFailed
11
12
  end
12
13
  end
@@ -49,7 +50,7 @@ describe CouchRest do
49
50
 
50
51
  describe "initializing a database" do
51
52
  it "should return a db" do
52
- db = @cr.database('couchrest-test')
53
+ db = @cr.database(TESTDB)
53
54
  db.should be_an_instance_of(CouchRest::Database)
54
55
  db.host.should == @cr.uri
55
56
  end
@@ -57,28 +58,28 @@ describe CouchRest do
57
58
 
58
59
  describe "successfully creating a database" do
59
60
  it "should start without a database" do
60
- @cr.databases.should_not include('couchrest-test')
61
+ @cr.databases.should_not include(TESTDB)
61
62
  end
62
63
  it "should return the created database" do
63
- db = @cr.create_db('couchrest-test')
64
+ db = @cr.create_db(TESTDB)
64
65
  db.should be_an_instance_of(CouchRest::Database)
65
66
  end
66
67
  it "should create the database" do
67
- db = @cr.create_db('couchrest-test')
68
- @cr.databases.should include('couchrest-test')
68
+ db = @cr.create_db(TESTDB)
69
+ @cr.databases.should include(TESTDB)
69
70
  end
70
71
  end
71
72
 
72
73
  describe "failing to create a database because the name is taken" do
73
74
  before(:each) do
74
- db = @cr.create_db('couchrest-test')
75
+ db = @cr.create_db(TESTDB)
75
76
  end
76
77
  it "should start with the test database" do
77
- @cr.databases.should include('couchrest-test')
78
+ @cr.databases.should include(TESTDB)
78
79
  end
79
80
  it "should PUT the database and raise an error" do
80
81
  lambda{
81
- @cr.create_db('couchrest-test')
82
+ @cr.create_db(TESTDB)
82
83
  }.should raise_error(RestClient::Request::RequestFailed)
83
84
  end
84
85
  end
@@ -1,10 +1,10 @@
1
- require File.dirname(__FILE__) + '/../lib/couchrest'
1
+ require File.dirname(__FILE__) + '/spec_helper'
2
2
 
3
3
  describe CouchRest::Database do
4
4
  before(:each) do
5
- @cr = CouchRest.new("http://localhost:5984")
5
+ @cr = CouchRest.new(COUCHHOST)
6
6
  begin
7
- @db = @cr.create_db('couchrest-test')
7
+ @db = @cr.create_db(TESTDB)
8
8
  rescue RestClient::Request::RequestFailed
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jchris-couchrest
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.99
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - J. Chris Anderson
@@ -69,7 +69,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
69
69
  requirements: []
70
70
 
71
71
  rubyforge_project:
72
- rubygems_version: 1.0.1
72
+ rubygems_version: 1.2.0
73
73
  signing_key:
74
74
  specification_version: 2
75
75
  summary: Lean and RESTful interface to CouchDB.