awesome_nested_set 1.4.3 → 1.4.4

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.
@@ -39,6 +39,14 @@ Enable the nested set functionality by declaring acts_as_nested_set on your mode
39
39
 
40
40
  Run `rake rdoc` to generate the API docs and see CollectiveIdea::Acts::NestedSet::SingletonMethods for more info.
41
41
 
42
+ == Conversion from other trees
43
+
44
+ Coming from acts_as_tree or another system where you only have a parent_id? No problem. Simply add the lft & rgt fields as above, and then run
45
+
46
+ Category.rebuild!
47
+
48
+ Your tree be converted to a valid nested set. Awesome!
49
+
42
50
  == View Helper
43
51
 
44
52
  The view helper is called #nested_set_options.
data/Rakefile CHANGED
@@ -1,7 +1,8 @@
1
+ require 'rubygems'
1
2
  begin
2
3
  require 'jeweler'
3
4
  rescue LoadError
4
- puts "Jeweler not available. Install it with: sudo gem install technicalpickles-jeweler -s http://gems.github.com"
5
+ puts "Jeweler not available. Install it with: sudo gem install jeweler"
5
6
  exit 1
6
7
  end
7
8
  require 'rake/testtask'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.4.3
1
+ 1.4.4
@@ -1,15 +1,15 @@
1
1
  # Generated by jeweler
2
- # DO NOT EDIT THIS FILE
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run `rake gemspec`
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{awesome_nested_set}
8
- s.version = "1.4.3"
8
+ s.version = "1.4.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Brandon Keepers", "Daniel Morrison"]
12
- s.date = %q{2009-10-07}
12
+ s.date = %q{2011-05-10}
13
13
  s.description = %q{An awesome nested set implementation for Active Record}
14
14
  s.email = %q{info@collectiveidea.com}
15
15
  s.extra_rdoc_files = [
@@ -17,50 +17,37 @@ Gem::Specification.new do |s|
17
17
  ]
18
18
  s.files = [
19
19
  ".autotest",
20
- ".gitignore",
21
- "MIT-LICENSE",
22
- "README.rdoc",
23
- "Rakefile",
24
- "VERSION",
25
- "awesome_nested_set.gemspec",
26
- "init.rb",
27
- "lib/awesome_nested_set.rb",
28
- "lib/awesome_nested_set/helper.rb",
29
- "rails/init.rb",
30
- "test/application.rb",
31
- "test/awesome_nested_set/helper_test.rb",
32
- "test/awesome_nested_set_test.rb",
33
- "test/db/database.yml",
34
- "test/db/schema.rb",
35
- "test/fixtures/categories.yml",
36
- "test/fixtures/category.rb",
37
- "test/fixtures/departments.yml",
38
- "test/fixtures/notes.yml",
39
- "test/test_helper.rb"
20
+ "MIT-LICENSE",
21
+ "README.rdoc",
22
+ "Rakefile",
23
+ "VERSION",
24
+ "awesome_nested_set.gemspec",
25
+ "init.rb",
26
+ "lib/awesome_nested_set.rb",
27
+ "lib/awesome_nested_set/helper.rb",
28
+ "rails/init.rb",
29
+ "test/application.rb",
30
+ "test/awesome_nested_set/helper_test.rb",
31
+ "test/awesome_nested_set_test.rb",
32
+ "test/db/database.yml",
33
+ "test/db/schema.rb",
34
+ "test/fixtures/categories.yml",
35
+ "test/fixtures/category.rb",
36
+ "test/fixtures/departments.yml",
37
+ "test/fixtures/notes.yml",
38
+ "test/test_helper.rb"
40
39
  ]
41
40
  s.homepage = %q{http://github.com/collectiveidea/awesome_nested_set}
42
41
  s.rdoc_options = ["--main", "README.rdoc", "--inline-source", "--line-numbers"]
43
42
  s.require_paths = ["lib"]
44
- s.rubygems_version = %q{1.3.5}
43
+ s.rubygems_version = %q{1.5.2}
45
44
  s.summary = %q{An awesome nested set implementation for Active Record}
46
- s.test_files = [
47
- "test/db/database.yml",
48
- "test/fixtures/categories.yml",
49
- "test/fixtures/departments.yml",
50
- "test/fixtures/notes.yml",
51
- "test/application.rb",
52
- "test/awesome_nested_set/helper_test.rb",
53
- "test/awesome_nested_set_test.rb",
54
- "test/db/schema.rb",
55
- "test/fixtures/category.rb",
56
- "test/test_helper.rb"
57
- ]
45
+ s.test_files = ["test/db/database.yml", "test/fixtures/categories.yml", "test/fixtures/departments.yml", "test/fixtures/notes.yml", "test/application.rb", "test/awesome_nested_set/helper_test.rb", "test/awesome_nested_set_test.rb", "test/db/schema.rb", "test/fixtures/category.rb", "test/test_helper.rb"]
58
46
 
59
47
  if s.respond_to? :specification_version then
60
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
61
48
  s.specification_version = 3
62
49
 
63
- if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
50
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
64
51
  s.add_runtime_dependency(%q<activerecord>, [">= 1.1"])
65
52
  else
66
53
  s.add_dependency(%q<activerecord>, [">= 1.1"])
@@ -69,3 +56,4 @@ Gem::Specification.new do |s|
69
56
  s.add_dependency(%q<activerecord>, [">= 1.1"])
70
57
  end
71
58
  end
59
+
@@ -755,4 +755,47 @@ class AwesomeNestedSetTest < TestCaseClass
755
755
  model.new(:name => 'foo')
756
756
  end
757
757
  end
758
+
759
+ def test_before_move_callback
760
+ @called = false
761
+ Category.before_move do |record|
762
+ @called = true
763
+ end
764
+ categories(:child_2).move_to_root
765
+ assert @called
766
+ ensure
767
+ Category.before_move_callback_chain.pop
768
+ end
769
+
770
+ def test_before_move_callback_returning_false_stops_move
771
+ Category.before_move do
772
+ return false
773
+ end
774
+ assert !categories(:child_3).move_to_root
775
+ assert !categories(:child_3).root?
776
+ ensure
777
+ Category.before_move_callback_chain.pop
778
+ end
779
+
780
+ def test_before_move_callback_returning_false_halts_save
781
+ Category.before_move do
782
+ return false
783
+ end
784
+ categories(:child_3).parent_id = nil
785
+ assert !categories(:child_3).save
786
+ ensure
787
+ Category.before_move_callback_chain.pop
788
+ end
789
+
790
+ def test_calls_after_save_when_moving
791
+ @called = false
792
+ Category.after_save do
793
+ @called = true
794
+ end
795
+ categories(:child_3).parent = categories(:child_2)
796
+ assert categories(:child_3).save
797
+ assert @called
798
+ ensure
799
+ Category.after_save_callback_chain.pop
800
+ end
758
801
  end
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awesome_nested_set
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.3
4
+ hash: 15
5
+ prerelease:
6
+ segments:
7
+ - 1
8
+ - 4
9
+ - 4
10
+ version: 1.4.4
5
11
  platform: ruby
6
12
  authors:
7
13
  - Brandon Keepers
@@ -10,19 +16,24 @@ autorequire:
10
16
  bindir: bin
11
17
  cert_chain: []
12
18
 
13
- date: 2009-10-07 00:00:00 -04:00
19
+ date: 2011-05-10 00:00:00 +01:00
14
20
  default_executable:
15
21
  dependencies:
16
22
  - !ruby/object:Gem::Dependency
17
23
  name: activerecord
18
- type: :runtime
19
- version_requirement:
20
- version_requirements: !ruby/object:Gem::Requirement
24
+ prerelease: false
25
+ requirement: &id001 !ruby/object:Gem::Requirement
26
+ none: false
21
27
  requirements:
22
28
  - - ">="
23
29
  - !ruby/object:Gem::Version
30
+ hash: 13
31
+ segments:
32
+ - 1
33
+ - 1
24
34
  version: "1.1"
25
- version:
35
+ type: :runtime
36
+ version_requirements: *id001
26
37
  description: An awesome nested set implementation for Active Record
27
38
  email: info@collectiveidea.com
28
39
  executables: []
@@ -33,7 +44,6 @@ extra_rdoc_files:
33
44
  - README.rdoc
34
45
  files:
35
46
  - .autotest
36
- - .gitignore
37
47
  - MIT-LICENSE
38
48
  - README.rdoc
39
49
  - Rakefile
@@ -66,21 +76,27 @@ rdoc_options:
66
76
  require_paths:
67
77
  - lib
68
78
  required_ruby_version: !ruby/object:Gem::Requirement
79
+ none: false
69
80
  requirements:
70
81
  - - ">="
71
82
  - !ruby/object:Gem::Version
83
+ hash: 3
84
+ segments:
85
+ - 0
72
86
  version: "0"
73
- version:
74
87
  required_rubygems_version: !ruby/object:Gem::Requirement
88
+ none: false
75
89
  requirements:
76
90
  - - ">="
77
91
  - !ruby/object:Gem::Version
92
+ hash: 3
93
+ segments:
94
+ - 0
78
95
  version: "0"
79
- version:
80
96
  requirements: []
81
97
 
82
98
  rubyforge_project:
83
- rubygems_version: 1.3.5
99
+ rubygems_version: 1.5.2
84
100
  signing_key:
85
101
  specification_version: 3
86
102
  summary: An awesome nested set implementation for Active Record
data/.gitignore DELETED
@@ -1,5 +0,0 @@
1
- awesome_nested_set.sqlite3.db
2
- test/debug.log
3
- rdoc
4
- coverage
5
- pkg