modularize 0.0.1 → 0.0.2

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.
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...