aquarium 0.4.4 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. data/CHANGES +31 -6
  2. data/README +4 -1
  3. data/RELEASE-PLAN +2 -0
  4. data/Rakefile +20 -30
  5. data/UPGRADE +14 -4
  6. data/lib/aquarium/aspects/advice.rb +25 -10
  7. data/lib/aquarium/aspects/aspect.rb +8 -7
  8. data/lib/aquarium/aspects/join_point.rb +15 -5
  9. data/lib/aquarium/aspects/pointcut.rb +4 -4
  10. data/lib/aquarium/extensions.rb +0 -1
  11. data/lib/aquarium/finders/method_finder.rb +3 -10
  12. data/lib/aquarium/finders/pointcut_finder.rb +15 -5
  13. data/lib/aquarium/finders/type_finder.rb +0 -1
  14. data/lib/aquarium/utils/array_utils.rb +0 -1
  15. data/lib/aquarium/utils/method_utils.rb +13 -2
  16. data/lib/aquarium/utils/options_utils.rb +1 -0
  17. data/lib/aquarium/utils/type_utils.rb +21 -5
  18. data/lib/aquarium/version.rb +2 -2
  19. data/spec/aquarium/aspects/advice_chain_node_spec.rb +0 -1
  20. data/spec/aquarium/aspects/advice_spec.rb +80 -45
  21. data/spec/aquarium/aspects/aspect_invocation_spec.rb +66 -31
  22. data/spec/aquarium/aspects/aspect_spec.rb +88 -91
  23. data/spec/aquarium/aspects/concurrent_aspects_spec.rb +1 -1
  24. data/spec/aquarium/aspects/concurrent_aspects_with_objects_and_types_spec.rb +3 -1
  25. data/spec/aquarium/aspects/join_point_spec.rb +0 -1
  26. data/spec/aquarium/aspects/pointcut_spec.rb +21 -18
  27. data/spec/aquarium/extensions/hash_spec.rb +211 -219
  28. data/spec/aquarium/extensions/set_spec.rb +1 -1
  29. data/spec/aquarium/extras/design_by_contract_spec.rb +1 -1
  30. data/spec/aquarium/finders/finder_result_spec.rb +4 -4
  31. data/spec/aquarium/finders/method_finder_spec.rb +6 -9
  32. data/spec/aquarium/finders/type_finder_spec.rb +2 -2
  33. data/spec/aquarium/finders/type_finder_with_descendents_and_ancestors_spec.rb +12 -10
  34. data/spec/aquarium/spec_example_types.rb +2 -2
  35. data/spec/aquarium/spec_helper.rb +1 -1
  36. data/spec/aquarium/utils/array_utils_spec.rb +32 -5
  37. data/spec/aquarium/utils/hash_utils_spec.rb +1 -0
  38. data/spec/aquarium/utils/method_utils_spec.rb +18 -0
  39. data/spec/aquarium/utils/options_utils_spec.rb +16 -20
  40. data/spec/aquarium/utils/type_utils_sample_classes.rb +10 -1
  41. data/spec/aquarium/utils/type_utils_spec.rb +9 -7
  42. metadata +29 -35
  43. data/lib/aquarium/extensions/symbol.rb +0 -22
  44. data/spec/aquarium/extensions/symbol_spec.rb +0 -37
metadata CHANGED
@@ -1,30 +1,28 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: aquarium
3
- version: !ruby/object:Gem::Version
4
- version: 0.4.4
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.5.1
5
+ prerelease:
5
6
  platform: ruby
6
- authors:
7
+ authors:
7
8
  - Aquarium Development Team
8
9
  autorequire: aquarium
9
10
  bindir: bin
10
11
  cert_chain: []
11
-
12
- date: 2009-10-03 00:00:00 -05:00
13
- default_executable: ""
12
+ date: 2012-07-31 00:00:00.000000000 Z
14
13
  dependencies: []
15
-
16
- description: Aquarium is a full-featured Aspect-Oriented Programming (AOP) framework for Ruby that is designed to provide an intuitive syntax and support for large-scale, dynamic aspects.
14
+ description: ! " Aquarium is a full-featured Aspect-Oriented Programming (AOP)
15
+ framework for Ruby that is \n designed to provide an intuitive syntax and support
16
+ for large-scale, dynamic aspects.\n"
17
17
  email: aquarium-devel@rubyforge.org
18
18
  executables: []
19
-
20
19
  extensions: []
21
-
22
- extra_rdoc_files:
20
+ extra_rdoc_files:
23
21
  - README
24
22
  - CHANGES
25
23
  - MIT_LICENSE
26
24
  - UPGRADE
27
- files:
25
+ files:
28
26
  - CHANGES
29
27
  - EXAMPLES.rd
30
28
  - MIT_LICENSE
@@ -47,7 +45,6 @@ files:
47
45
  - lib/aquarium/extensions/regexp.rb
48
46
  - lib/aquarium/extensions/set.rb
49
47
  - lib/aquarium/extensions/string.rb
50
- - lib/aquarium/extensions/symbol.rb
51
48
  - lib/aquarium/extensions.rb
52
49
  - lib/aquarium/extras/design_by_contract.rb
53
50
  - lib/aquarium/extras.rb
@@ -90,7 +87,6 @@ files:
90
87
  - spec/aquarium/extensions/regex_spec.rb
91
88
  - spec/aquarium/extensions/set_spec.rb
92
89
  - spec/aquarium/extensions/string_spec.rb
93
- - spec/aquarium/extensions/symbol_spec.rb
94
90
  - spec/aquarium/extras/design_by_contract_spec.rb
95
91
  - spec/aquarium/finders/finder_result_spec.rb
96
92
  - spec/aquarium/finders/method_finder_spec.rb
@@ -132,36 +128,34 @@ files:
132
128
  - rake_tasks/examples_specdoc.rake
133
129
  - rake_tasks/examples_with_rcov.rake
134
130
  - rake_tasks/verify_rcov.rake
135
- has_rdoc: true
136
131
  homepage: http://aquarium.rubyforge.org
132
+ licenses: []
137
133
  post_install_message:
138
- rdoc_options:
134
+ rdoc_options:
139
135
  - --title
140
136
  - Aquarium
141
137
  - --line-numbers
142
138
  - --inline-source
143
139
  - --main
144
140
  - README
145
- require_paths:
141
+ require_paths:
146
142
  - lib
147
- required_ruby_version: !ruby/object:Gem::Requirement
148
- requirements:
149
- - - ">="
150
- - !ruby/object:Gem::Version
151
- version: "0"
152
- version:
153
- required_rubygems_version: !ruby/object:Gem::Requirement
154
- requirements:
155
- - - ">="
156
- - !ruby/object:Gem::Version
157
- version: "0"
158
- version:
143
+ required_ruby_version: !ruby/object:Gem::Requirement
144
+ none: false
145
+ requirements:
146
+ - - ! '>='
147
+ - !ruby/object:Gem::Version
148
+ version: '0'
149
+ required_rubygems_version: !ruby/object:Gem::Requirement
150
+ none: false
151
+ requirements:
152
+ - - ! '>='
153
+ - !ruby/object:Gem::Version
154
+ version: '0'
159
155
  requirements: []
160
-
161
156
  rubyforge_project: aquarium
162
- rubygems_version: 1.3.0
157
+ rubygems_version: 1.8.11
163
158
  signing_key:
164
- specification_version: 2
165
- summary: Aquarium-0.4.4 (r7) - Aspect-Oriented Programming toolkit for Ruby http://aquarium.rubyforge.org
159
+ specification_version: 3
160
+ summary: Aquarium-0.5.1 (r7) - Aspect-Oriented Programming toolkit for Ruby http://aquarium.rubyforge.org
166
161
  test_files: []
167
-
@@ -1,22 +0,0 @@
1
- # Adding useful methods to Symbol.
2
- module Aquarium
3
- module Extensions
4
- module SymbolHelper
5
- def empty?
6
- return to_s.strip.empty?
7
- end
8
-
9
- def strip
10
- return to_s.strip.to_sym
11
- end
12
-
13
- def <=> other_symbol
14
- self.to_s <=> other_symbol.to_s
15
- end
16
- end
17
- end
18
- end
19
-
20
- class Symbol
21
- include Aquarium::Extensions::SymbolHelper
22
- end
@@ -1,37 +0,0 @@
1
- require File.dirname(__FILE__) + '/../spec_helper'
2
- require 'aquarium/extensions/symbol'
3
-
4
- describe "Symbol#empty?" do
5
-
6
- it "should return true for an empty symbol with whitespace" do
7
- :" \t ".empty?.should be_true
8
- end
9
-
10
- it "should return false for a non-empty symbol" do
11
- :x.empty?.should be_false
12
- end
13
- end
14
-
15
- describe "Symbol#strip" do
16
- it "should return equivalent Symbol if there is no leading or trailing whitespace." do
17
- :a.strip.should == :a
18
- end
19
-
20
- it "should return new Symbol with removed leading and/or trailing whitespace, when present." do
21
- :" \ta\t ".strip.should == :a
22
- end
23
- end
24
-
25
- describe "Symbol#<=>" do
26
- it "should return < 0 if the string representation of the left-hand side symbol is less than the string representation of the right-hand side symbol." do
27
- (:a <=> :b).should == -1
28
- end
29
-
30
- it "should return > 0 if the string representation of the left-hand side symbol is greater than the string representation of the right-hand side symbol." do
31
- (:b <=> :a).should == 1
32
- end
33
-
34
- it "should return 0 if the string representation of the left-hand side symbol is equal to the string representation of the right-hand side symbol." do
35
- (:a <=> :a).should == 0
36
- end
37
- end