modularize 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4ab55c740eb662c09b6c8ce209591683181ba380
4
- data.tar.gz: 1ccd45385559d17dc73968b1212b2eb6b04c536a
3
+ metadata.gz: 6d679f6b678438e974373b4e0aa6d83b9c6343cc
4
+ data.tar.gz: ede2458c47223c606fd562f6abe9bd99fff8b4fe
5
5
  SHA512:
6
- metadata.gz: ca8efa1e69655eea7293ffa4e13e0febde8ccebb3f0eeb27bb577997bf69129c1b5a31900b2b79923d9fe7898c652936b9ed9931f765e71de113c38708a6b54a
7
- data.tar.gz: 75f57cf54aaabb18a5e759a0cfbb6051a4a955212a40467f32c3807f5aad8c2d4459ac07ae0298ac51c90c7e5d58d25e301d4dfbd5f5f0c56e6cc48539dae320
6
+ metadata.gz: 4d32ad050572a4f0e94743fc9915a590db906362508d347236bd4a4ed496b0c772100a5dd617266a3dc5651abe1c315c17b6175c9e5b4d9d12ebbe79a4e4d7fb
7
+ data.tar.gz: 625779216c832281e84103e81bb5947504129523439732ad5610532a234f52521d991d1ada2cc536c6758c785e1e67223381917424185d23225624a35b2a45fa
@@ -1,2 +1,2 @@
1
1
  require "modularize/version"
2
- require 'modularize/modulize'
2
+ require "modularize/modularize"
@@ -1,4 +1,4 @@
1
- class Modulize
1
+ module Modularize
2
2
  def self.create(path, root = Object)
3
3
  path.split('::').each do |name|
4
4
  root = create_module(name, root)
@@ -10,7 +10,7 @@ class Modulize
10
10
  def self.create_module(name, root)
11
11
  new_module = root.const_defined?(name) ? root.const_get(name) : nil
12
12
 
13
- unless nil
13
+ unless new_module
14
14
  new_module = Module.new
15
15
  root.const_set name, new_module
16
16
  end
@@ -1,3 +1,3 @@
1
1
  module Modularize
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -1,15 +1,38 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Modulize do
3
+ describe Modularize do
4
+ after do
5
+ Object.send(:remove_const, :Fruit) if defined?(Fruit)
6
+ Object.send(:remove_const, :Animals) if defined?(Animals)
7
+ end
8
+
4
9
  it 'creates a single module' do
5
10
  defined?(Fruit).should == nil
6
- Modulize.create('Fruit')
11
+ Modularize.create('Fruit')
7
12
  defined?(Fruit).should_not == nil
8
13
  end
9
14
 
10
15
  it 'creates nested modules' do
11
16
  defined?(Animals::Cats::Bombay).should == nil
12
- Modulize.create('Animals::Cats::Bombay')
17
+ Modularize.create('Animals::Cats::Bombay')
13
18
  defined?(Animals::Cats::Bombay).should_not == nil
14
19
  end
20
+
21
+ it 'creates from given root' do
22
+ Modularize.create('Fruit')
23
+ Modularize.create('Orange', Fruit)
24
+ defined?(Fruit::Orange).should_not == nil
25
+ end
26
+
27
+ it 'can create the same one twice' do
28
+ Modularize.create('Fruit')
29
+ Modularize.create('Fruit')
30
+ defined?(Fruit).should_not == nil
31
+ end
32
+
33
+ it 'doenst overwrite old modules' do
34
+ Modularize.create('Fruit::Orange')
35
+ Modularize.create('Fruit')
36
+ defined?(Fruit::Orange).should_not == nil
37
+ end
15
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: modularize
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gavin Joyce
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-14 00:00:00.000000000 Z
11
+ date: 2013-11-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -66,7 +66,7 @@ files:
66
66
  - README.md
67
67
  - Rakefile
68
68
  - lib/modularize.rb
69
- - lib/modularize/modulize.rb
69
+ - lib/modularize/modularize.rb
70
70
  - lib/modularize/version.rb
71
71
  - modularize.gemspec
72
72
  - spec/modularize_spec.rb
@@ -91,7 +91,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
91
91
  version: '0'
92
92
  requirements: []
93
93
  rubyforge_project:
94
- rubygems_version: 2.0.5
94
+ rubygems_version: 2.0.7
95
95
  signing_key:
96
96
  specification_version: 4
97
97
  summary: Dynamically create module hierarchies...