From eca3b064617340ecd03c7eb5333a11e21bf39e6d Mon Sep 17 00:00:00 2001 From: Matt Lyon Date: Sun, 4 Jan 2009 03:28:08 -0800 Subject: [PATCH] don't error when the given directories don't exist --- lib/couchrest/helper/file_manager.rb | 4 ++-- spec/couchrest/helpers/file_manager_spec.rb | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/couchrest/helper/file_manager.rb b/lib/couchrest/helper/file_manager.rb index d7dd0a6..7474b17 100644 --- a/lib/couchrest/helper/file_manager.rb +++ b/lib/couchrest/helper/file_manager.rb @@ -26,8 +26,8 @@ module CouchRest attachdir = File.join(appdir,"_attachments") @doc = dir_to_fields(appdir) - package_forms(@doc["forms"]) - package_views(@doc["views"]) + package_forms(@doc["forms"]) if @doc['forms'] + package_views(@doc["views"]) if @doc['views'] docid = "_design/#{appname}" design = @db.get(docid) rescue {} diff --git a/spec/couchrest/helpers/file_manager_spec.rb b/spec/couchrest/helpers/file_manager_spec.rb index 995cb7c..7353847 100644 --- a/spec/couchrest/helpers/file_manager_spec.rb +++ b/spec/couchrest/helpers/file_manager_spec.rb @@ -108,6 +108,11 @@ describe CouchRest::FileManager, "pushing an app" do doc = @db.get("_design/couchapp") doc['magical'].should == "so magic" end + it "handles not having a forms directory" do + `rm -rf #{@appdir}/forms` + lambda { @fm.push_app(@appdir, "couchapp") }.should_not raise_error + `mkdir -p #{@appdir}/forms` + end end