aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhilip Arndt <parndt@gmail.com>2012-01-08 14:29:07 -0800
committerPhilip Arndt <parndt@gmail.com>2012-01-08 14:29:07 -0800
commitbbc6e909396f994baed90a9e8f1641eb0cab86f2 (patch)
tree0d2560b857aede1836a8f437a0d89d03730694ac
parent7dd6cb5e608945b4ae3a86276facfcb79f347a29 (diff)
parent63b0bec5ff625738ce0072f41fd05439dcd08d0e (diff)
downloadrefinerycms-blog-bbc6e909396f994baed90a9e8f1641eb0cab86f2.tar.gz
refinerycms-blog-bbc6e909396f994baed90a9e8f1641eb0cab86f2.tar.bz2
refinerycms-blog-bbc6e909396f994baed90a9e8f1641eb0cab86f2.zip
Merge pull request #170 from substantial/make_db_seed_idempotent
Make db seed idempotent
-rw-r--r--Gemfile1
-rw-r--r--db/seeds.rb2
-rw-r--r--spec/lib/refinery/blog/engine_spec.rb19
3 files changed, 17 insertions, 5 deletions
diff --git a/Gemfile b/Gemfile
index 87935cd..84ec8dc 100644
--- a/Gemfile
+++ b/Gemfile
@@ -29,6 +29,7 @@ group :development, :test do
if RbConfig::CONFIG['target_os'] =~ /linux/i
gem 'rb-inotify', '>= 0.5.1'
gem 'libnotify', '~> 0.1.3'
+ gem 'therubyracer', '~> 0.9.9'
end
end
end
diff --git a/db/seeds.rb b/db/seeds.rb
index bd273ea..d603553 100644
--- a/db/seeds.rb
+++ b/db/seeds.rb
@@ -5,7 +5,7 @@ Refinery::User.find(:all).each do |user|
end
end if defined?(Refinery::User)
-if defined?(Refinery::Page)
+if defined?(Refinery::Page) and !Refinery::Page.exists?(:link_url => '/blog')
page = Refinery::Page.create(
:title => "Blog",
:link_url => "/blog",
diff --git a/spec/lib/refinery/blog/engine_spec.rb b/spec/lib/refinery/blog/engine_spec.rb
index 5b36fd8..1c44da7 100644
--- a/spec/lib/refinery/blog/engine_spec.rb
+++ b/spec/lib/refinery/blog/engine_spec.rb
@@ -3,12 +3,23 @@ require 'spec_helper'
module Refinery
module Blog
describe Engine do
- let(:activity) do
- Refinery::Plugins.registered.find_by_name("refinerycms_blog").activity.first
+ describe "plugin activity" do
+ let(:activity) do
+ Refinery::Plugins.registered.find_by_name("refinerycms_blog").activity.first
+ end
+
+ it "sets the correct path for activity entries" do
+ activity.url.should eq("edit_refinery_admin_blog_posts_path")
+ end
end
- it "sets the correct path for activity entries" do
- activity.url.should eq("edit_refinery_admin_blog_posts_path")
+ describe ".load_seed" do
+ it "is idempotent" do
+ Refinery::Blog::Engine.load_seed
+ Refinery::Blog::Engine.load_seed
+
+ Refinery::Page.where(:link_url => '/blog').count.should eq(1)
+ end
end
end
end