dragonfly 0.6.0 → 0.6.1
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.
Potentially problematic release.
This version of dragonfly might be problematic. Click here for more details.
- data/VERSION +1 -1
- data/dragonfly.gemspec +2 -2
- data/lib/dragonfly/active_record_extensions/class_methods.rb +2 -2
- data/spec/dragonfly/active_record_extensions/migration.rb +5 -1
- data/spec/dragonfly/active_record_extensions/model_spec.rb +29 -6
- data/spec/dragonfly/active_record_extensions/models.rb +1 -1
- data/yard/templates/default/layout/html/layout.erb +17 -0
- metadata +3 -3
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.1
|
data/dragonfly.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{dragonfly}
|
8
|
-
s.version = "0.6.
|
8
|
+
s.version = "0.6.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Mark Evans"]
|
12
|
-
s.date = %q{2010-05-
|
12
|
+
s.date = %q{2010-05-16}
|
13
13
|
s.email = %q{mark@new-bamboo.co.uk}
|
14
14
|
s.extra_rdoc_files = [
|
15
15
|
"LICENSE",
|
@@ -36,11 +36,11 @@ module Dragonfly
|
|
36
36
|
|
37
37
|
def dragonfly_apps_for_attributes
|
38
38
|
@dragonfly_apps_for_attributes ||= begin
|
39
|
-
parent_class = ancestors[1]
|
39
|
+
parent_class = ancestors.select{|a| a.is_a?(Class) }[1]
|
40
40
|
parent_class.respond_to?(:dragonfly_apps_for_attributes) ? parent_class.dragonfly_apps_for_attributes.dup : {}
|
41
41
|
end
|
42
42
|
end
|
43
|
-
|
43
|
+
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
@@ -546,29 +546,52 @@ describe Item do
|
|
546
546
|
end
|
547
547
|
|
548
548
|
describe "inheritance" do
|
549
|
+
|
549
550
|
before(:all) do
|
550
551
|
@app = Dragonfly::App[:images]
|
552
|
+
@app2 = Dragonfly::App[:egg]
|
551
553
|
Dragonfly.active_record_macro(:image, @app)
|
554
|
+
Dragonfly.active_record_macro(:egg, @app2)
|
552
555
|
Car.class_eval do
|
553
556
|
image_accessor :image
|
554
557
|
end
|
555
|
-
|
558
|
+
Photo.class_eval do
|
559
|
+
egg_accessor :image
|
560
|
+
end
|
561
|
+
|
562
|
+
@base_class = Car
|
563
|
+
@subclass = Class.new(Car){ image_accessor :reliant_image }
|
564
|
+
@subclass_with_module = Class.new(Car) do
|
565
|
+
include Module.new
|
556
566
|
image_accessor :reliant_image
|
557
567
|
end
|
568
|
+
@unrelated_class = Photo
|
558
569
|
end
|
570
|
+
|
559
571
|
it "should allow assigning base class accessors" do
|
560
|
-
|
572
|
+
@base_class.create! :image => 'blah'
|
561
573
|
end
|
562
574
|
it "should not allow assigning subclass accessors in the base class" do
|
563
|
-
|
575
|
+
@base_class.new.should_not respond_to(:reliant_image=)
|
564
576
|
end
|
565
577
|
it "should allow assigning base class accessors in the subclass" do
|
566
|
-
|
578
|
+
@subclass.create! :image => 'blah'
|
567
579
|
end
|
568
580
|
it "should allow assigning subclass accessors in the subclass" do
|
569
|
-
|
581
|
+
@subclass.create! :reliant_image => 'blah'
|
582
|
+
end
|
583
|
+
it "should allow assigning base class accessors in the subclass, even if it has mixins" do
|
584
|
+
@subclass_with_module.create! :image => 'blah'
|
585
|
+
end
|
586
|
+
it "should allow assigning subclass accessors in the subclass, even if it has mixins" do
|
587
|
+
@subclass_with_module.create! :reliant_image => 'blah'
|
588
|
+
end
|
589
|
+
it "return the correct apps for each accessors, even when names clash" do
|
590
|
+
@base_class.dragonfly_apps_for_attributes.should == {:image => @app}
|
591
|
+
@subclass.dragonfly_apps_for_attributes.should == {:image => @app, :reliant_image => @app}
|
592
|
+
@subclass_with_module.dragonfly_apps_for_attributes.should == {:image => @app, :reliant_image => @app}
|
593
|
+
@unrelated_class.dragonfly_apps_for_attributes.should == {:image => @app2}
|
570
594
|
end
|
571
|
-
|
572
595
|
end
|
573
596
|
|
574
597
|
end
|
@@ -5,6 +5,23 @@
|
|
5
5
|
<%= erb(:headers) %>
|
6
6
|
</head>
|
7
7
|
<body>
|
8
|
+
|
9
|
+
<!-- GOOGLE ANALYTICS -->
|
10
|
+
<script type="text/javascript">
|
11
|
+
|
12
|
+
var _gaq = _gaq || [];
|
13
|
+
_gaq.push(['_setAccount', 'UA-16382932-1']);
|
14
|
+
_gaq.push(['_trackPageview']);
|
15
|
+
|
16
|
+
(function() {
|
17
|
+
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
18
|
+
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
19
|
+
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
20
|
+
})();
|
21
|
+
|
22
|
+
</script>
|
23
|
+
<!-- *************** -->
|
24
|
+
|
8
25
|
<script type="text/javascript" charset="utf-8">
|
9
26
|
if (window.top.frames.main) document.body.className = 'frames';
|
10
27
|
</script>
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 6
|
8
|
-
-
|
9
|
-
version: 0.6.
|
8
|
+
- 1
|
9
|
+
version: 0.6.1
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Mark Evans
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-05-
|
17
|
+
date: 2010-05-16 00:00:00 +01:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|