nullobject 0.0.5 → 0.0.6

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 4c8b143cba5bf793cf65e43bb65924fe7d71ae62
4
+ data.tar.gz: 3e258489537fae4e9d3af3b26c640a2d326d3b85
5
+ SHA512:
6
+ metadata.gz: d195c6061b75bb1d26d5b78190f88919b592ee81bbf6af7c04f185f6390e0f50181ccd3979a4c732bad2542ef34f413feda0455d2ba8d6d77335f85d8aa6612d
7
+ data.tar.gz: 5ba4b97f662133752ab01d7dfea91dde9a670478c8aee0b9037d78e97a6662dc13692a3438b13b8c1ec500e8b5c51a9f9dd998f0fedb3adc3ba8f938a23b6e88
@@ -0,0 +1,43 @@
1
+ Metrics/AbcSize:
2
+ Max: 18
3
+ Exclude:
4
+ - "test/**/*_test.rb"
5
+
6
+ Metrics/LineLength:
7
+ Max: 120
8
+
9
+ Metrics/MethodLength:
10
+ Max: 11
11
+ Exclude:
12
+ - "test/**/*_test.rb"
13
+
14
+ Style/Documentation:
15
+ Enabled: false
16
+
17
+ Style/NumericLiterals:
18
+ Enabled: false
19
+
20
+ Style/StringLiterals:
21
+ EnforcedStyle: double_quotes
22
+
23
+ Style/StringLiteralsInInterpolation:
24
+ EnforcedStyle: double_quotes
25
+
26
+ Style/TrivialAccessors:
27
+ AllowDSLWriters: true
28
+
29
+ Style/MethodCalledOnDoEndBlock:
30
+ Enabled: true
31
+
32
+ Style/Send:
33
+ Enabled: true
34
+
35
+ Style/CollectionMethods:
36
+ Enabled: true
37
+
38
+ Style/FileName:
39
+ Enabled: false
40
+
41
+ Style/Send:
42
+ Enabled: false
43
+
@@ -1,6 +1,12 @@
1
+ sudo: false
1
2
  rvm:
2
- - 1.9.2
3
3
  - 1.9.3
4
- - 1.8.7
5
- - rbx
4
+ - 2.0
5
+ - 2.1
6
+ - 2.2
7
+ - 2.3.3
8
+ - 2.4.0
6
9
  - jruby
10
+ env:
11
+ global:
12
+ - JRUBY_OPTS='--dev -J-Xmx1024M'
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source 'http://rubygems.org'
1
+ source "http://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in nullobject.gemspec
4
4
  gemspec
data/LICENSE CHANGED
@@ -1,3 +1,5 @@
1
+ MIT License
2
+
1
3
  Copyright (c) 2011 Marcin Ciunelis
2
4
 
3
5
  Permission is hereby granted, free of charge, to any person obtaining
data/README.md CHANGED
@@ -6,9 +6,12 @@
6
6
  The intent of a Null Object is to encapsulate the absence of an object by providing a substitutable alternative that offers suitable default do nothing behavior. In short, a design where “nothing will come of nothing”
7
7
 
8
8
  More about Null Object Pattern you can find here:
9
- [http://en.wikipedia.org/wiki/Null_Object_pattern](http://en.wikipedia.org/wiki/Null_Object_pattern)
10
- [http://sourcemaking.com/design_patterns/null_object](http://sourcemaking.com/design_patterns/null_object)
11
- [http://avdi.org/devblog/2011/05/30/null-objects-and-falsiness](http://avdi.org/devblog/2011/05/30/null-objects-and-falsiness/)
9
+
10
+ * [http://en.wikipedia.org/wiki/Null_Object_pattern](http://en.wikipedia.org/wiki/Null_Object_pattern)
11
+ * [http://sourcemaking.com/design_patterns/null_object](http://sourcemaking.com/design_patterns/null_object)
12
+ * [http://avdi.org/devblog/2011/05/30/null-objects-and-falsiness](http://avdi.org/devblog/2011/05/30/null-objects-and-falsiness/)
13
+
14
+ See also the [avdi/naught](https://github.com/avdi/naught) gem for extended variations of the null object pattern for Ruby 1.9.
12
15
 
13
16
  ## Usage
14
17
 
data/Rakefile CHANGED
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env rake
2
- require 'rake/testtask'
3
- require 'bundler/gem_tasks'
2
+ require "rake/testtask"
3
+ require "bundler/gem_tasks"
4
4
  Bundler.setup(:default, :test)
5
5
 
6
6
  Rake::TestTask.new do |t|
7
7
  t.libs << "spec"
8
- t.test_files = FileList['spec/**/*_spec.rb']
8
+ t.test_files = FileList["spec/**/*_spec.rb"]
9
9
  t.verbose = true
10
10
  end
11
11
 
12
- task :default => :test
12
+ task default: :test
@@ -1,32 +1,47 @@
1
1
  require "singleton"
2
2
 
3
3
  module Null
4
-
5
4
  def self.included(base)
6
5
  base.send(:include, Singleton)
7
6
  end
8
7
 
9
- def to_a; []; end
10
- def to_ary; []; end
11
- def to_s; ""; end
12
- def to_f; 0.0; end
13
- def to_i; 0; end
14
- def nil?; true; end
8
+ def to_a
9
+ []
10
+ end
11
+
12
+ def to_ary
13
+ []
14
+ end
15
+
16
+ def to_s
17
+ ""
18
+ end
19
+
20
+ def to_f
21
+ 0.0
22
+ end
23
+
24
+ def to_i
25
+ 0
26
+ end
27
+
28
+ def nil?
29
+ true
30
+ end
15
31
 
16
32
  def inspect
17
- "#<%s:0x%x>" % [self.class, object_id]
33
+ format("#<%s:0x%x>", self.class, object_id)
18
34
  end
19
35
 
20
- def method_missing(*args, &block)
36
+ def method_missing(*_args, &_block)
21
37
  self
22
38
  end
23
39
 
24
- def respond_to?(message, include_private=false)
40
+ def respond_to?(_message, _include_private = false)
25
41
  true
26
42
  end
27
43
 
28
44
  class Object
29
45
  include Null
30
46
  end
31
-
32
47
  end
@@ -1,3 +1,3 @@
1
1
  module Nullobject
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
@@ -1,23 +1,22 @@
1
1
  # -*- encoding: utf-8 -*-
2
- require File.expand_path('../lib/nullobject/version', __FILE__)
2
+ require File.expand_path("../lib/nullobject/version", __FILE__)
3
3
 
4
4
  Gem::Specification.new do |gem|
5
5
  gem.authors = ["Marcin Ciunelis"]
6
6
  gem.email = ["marcin.ciunelis@gmail.com"]
7
- gem.description = %q{Null Object Design Pattern Ruby implementation}
8
- gem.summary = %q{}
9
- gem.homepage = ""
7
+ gem.description = "Null Object Design Pattern Ruby implementation"
8
+ gem.summary = ""
9
+ gem.homepage = "https://github.com/martinciu/nullobject"
10
+ gem.license = "MIT"
10
11
 
11
- gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
12
+ gem.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
12
13
  gem.files = `git ls-files`.split("\n")
13
14
  gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
14
15
  gem.name = "nullobject"
15
16
  gem.require_paths = ["lib"]
16
17
  gem.version = Nullobject::VERSION
17
18
 
18
-
19
- gem.add_development_dependency "rake", "~> 0.9.2"
20
- gem.add_development_dependency "minitest", "~> 2.7.0"
21
- gem.add_development_dependency "turn", "~> 0.8.3"
22
-
19
+ gem.add_development_dependency "rake", "~> 10.4.2"
20
+ gem.add_development_dependency "minitest", "~> 4.7.5"
21
+ gem.add_development_dependency "turn", "~> 0.9.7"
23
22
  end
@@ -1,7 +1,6 @@
1
- require 'spec_helper'
1
+ require "spec_helper"
2
2
 
3
3
  describe "Null::Object" do
4
-
5
4
  describe "instance methods" do
6
5
  before do
7
6
  @it = Null::Object.instance
@@ -80,8 +79,5 @@ describe "Null::Object" do
80
79
  it "#to_bar returns 'nothing_here'" do
81
80
  @it.to_bar.must_equal "nothing here"
82
81
  end
83
-
84
82
  end
85
-
86
83
  end
87
-
@@ -1,14 +1,12 @@
1
- require 'rubygems'
2
- require 'bundler'
1
+ require "rubygems"
2
+ require "bundler"
3
3
  Bundler.setup(:default, :test)
4
4
  Bundler.require(:default, :test)
5
5
 
6
6
  dir = File.dirname(File.expand_path(__FILE__))
7
- $LOAD_PATH.unshift dir + '/../lib'
8
- $TESTING = true
9
- require 'minitest/spec'
10
- require 'minitest/autorun'
11
- require 'turn'
12
-
13
- require 'nullobject'
7
+ $LOAD_PATH.unshift dir + "/../lib"
8
+ require "minitest/spec"
9
+ require "minitest/autorun"
10
+ require "turn"
14
11
 
12
+ require "nullobject"
metadata CHANGED
@@ -1,64 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nullobject
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
5
- prerelease:
4
+ version: 0.0.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - Marcin Ciunelis
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-11-21 00:00:00.000000000 Z
11
+ date: 2017-03-09 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rake
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: 0.9.2
19
+ version: 10.4.2
22
20
  type: :development
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: 0.9.2
26
+ version: 10.4.2
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: minitest
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
- version: 2.7.0
33
+ version: 4.7.5
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
- version: 2.7.0
40
+ version: 4.7.5
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: turn
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: 0.8.3
47
+ version: 0.9.7
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: 0.8.3
54
+ version: 0.9.7
62
55
  description: Null Object Design Pattern Ruby implementation
63
56
  email:
64
57
  - marcin.ciunelis@gmail.com
@@ -66,8 +59,9 @@ executables: []
66
59
  extensions: []
67
60
  extra_rdoc_files: []
68
61
  files:
69
- - .gitignore
70
- - .travis.yml
62
+ - ".gitignore"
63
+ - ".rubocop.yml"
64
+ - ".travis.yml"
71
65
  - Gemfile
72
66
  - LICENSE
73
67
  - README.md
@@ -77,35 +71,29 @@ files:
77
71
  - nullobject.gemspec
78
72
  - spec/lib/nullobject_spec.rb
79
73
  - spec/spec_helper.rb
80
- homepage: ''
81
- licenses: []
74
+ homepage: https://github.com/martinciu/nullobject
75
+ licenses:
76
+ - MIT
77
+ metadata: {}
82
78
  post_install_message:
83
79
  rdoc_options: []
84
80
  require_paths:
85
81
  - lib
86
82
  required_ruby_version: !ruby/object:Gem::Requirement
87
- none: false
88
83
  requirements:
89
- - - ! '>='
84
+ - - ">="
90
85
  - !ruby/object:Gem::Version
91
86
  version: '0'
92
- segments:
93
- - 0
94
- hash: 4565374374475709443
95
87
  required_rubygems_version: !ruby/object:Gem::Requirement
96
- none: false
97
88
  requirements:
98
- - - ! '>='
89
+ - - ">="
99
90
  - !ruby/object:Gem::Version
100
91
  version: '0'
101
- segments:
102
- - 0
103
- hash: 4565374374475709443
104
92
  requirements: []
105
93
  rubyforge_project:
106
- rubygems_version: 1.8.24
94
+ rubygems_version: 2.6.8
107
95
  signing_key:
108
- specification_version: 3
96
+ specification_version: 4
109
97
  summary: ''
110
98
  test_files:
111
99
  - spec/lib/nullobject_spec.rb