Skip to content

Instantly share code, notes, and snippets.

@clyfe
Created June 27, 2012 18:00
Show Gist options
  • Save clyfe/3005721 to your computer and use it in GitHub Desktop.
Save clyfe/3005721 to your computer and use it in GitHub Desktop.
Patch
diff --git a/.gitignore b/.gitignore
index dfd12ee..bda50fe 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,4 +5,4 @@ test/dummy/db/*.sqlite3
test/dummy/log/*.log
test/dummy/tmp/
test/dummy/.sass-cache
-/nbproject/private/
\ No newline at end of file
+/nbproject
diff --git a/Gemfile.lock b/Gemfile.lock
index 6d5d3c9..ebb7928 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,7 +1,7 @@
PATH
remote: .
specs:
- acts_as_nested_interval (0.0.4)
+ acts_as_nested_interval (0.0.7)
rails (~> 3.2.1)
GEM
@@ -48,7 +48,7 @@ GEM
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
- mime-types (1.18)
+ mime-types (1.19)
multi_json (1.1.0)
polyglot (0.3.3)
rack (1.4.1)
diff --git a/test/acts_as_nested_interval_test.rb b/test/acts_as_nested_interval_test.rb
index 24a4f0d..8bd0025 100644
--- a/test/acts_as_nested_interval_test.rb
+++ b/test/acts_as_nested_interval_test.rb
@@ -219,4 +219,11 @@ class ActsAsNestedIntervalTest < ActiveSupport::TestCase
assert_not_equal lftq, r2.lftq
end
+ def test_descendants_correctness
+ Region.rebuild_nested_interval_tree!
+ [10, 11, 12, 13, 14, 15, 16, 27].each do |i|
+ assert_equal regions(:"region_#{i}").descendants, []
+ end
+ end
+
end
diff --git a/test/dummy/test/fixtures/regions.yml b/test/dummy/test/fixtures/regions.yml
index 78d71d5..fd7d46d 100644
--- a/test/dummy/test/fixtures/regions.yml
+++ b/test/dummy/test/fixtures/regions.yml
@@ -1,7 +1,295 @@
-# Read about fixtures at http://api.rubyonrails.org/classes/ActiveRecord/Fixtures.html
+region_1:
+ id: 1
+ name: "a"
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
-one:
+region_2:
+ id: 5
+ name: "a"
region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
-two:
+region_3:
+ id: 32
+ name: "a"
region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_4:
+ id: 33
+ name: "a"
+ region_id: 32
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_5:
+ id: 37
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_6:
+ id: 38
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_7:
+ id: 39
+ name: "a"
+ region_id: 38
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_8:
+ id: 40
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_9:
+ id: 41
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_10:
+ id: 42
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_11:
+ id: 43
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_12:
+ id: 44
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_13:
+ id: 45
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_14:
+ id: 46
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_15:
+ id: 47
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_16:
+ id: 48
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_17:
+ id: 49
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_18:
+ id: 50
+ name: "a"
+ region_id: 49
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_19:
+ id: 51
+ name: "a"
+ region_id: 38
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_20:
+ id: 52
+ name: "a"
+ region_id: 40
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_21:
+ id: 53
+ name: "a"
+ region_id: 52
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_22:
+ id: 55
+ name: "a"
+ region_id: 40
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_23:
+ id: 56
+ name: "a"
+ region_id: 40
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_24:
+ id: 57
+ name: "a"
+ region_id: 40
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_25:
+ id: 58
+ name: "a"
+ region_id: 41
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_26:
+ id: 59
+ name: "a"
+ region_id: 58
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
+
+region_27:
+ id: 60
+ name: "a"
+ region_id: 1
+ lftp: 0
+ lftq: 0
+ rgtp: 0
+ rgtq: 0
+ lft: 0
+ rgt: 0
diff --git a/test/test_helper.rb b/test/test_helper.rb
index dcd3b27..df152f3 100644
--- a/test/test_helper.rb
+++ b/test/test_helper.rb
@@ -8,3 +8,13 @@ Rails.backtrace_cleaner.remove_silencers!
# Load support files
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
+
+class ActiveSupport::TestCase
+ # Setup all fixtures in test/fixtures/*.(yml|csv) for all tests in alphabetical order.
+ #
+ # Note: You'll currently still have to declare fixtures explicitly in integration tests
+ # -- they do not yet inherit this setting
+ fixtures :all
+
+ # Add more helper methods to be used by all tests here...
+end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment