mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Move spec/rubyspec to spec/ruby for consistency
* Other ruby implementations use the spec/ruby directory. [Misc #13792] [ruby-core:82287] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
75bfc6440d
commit
1d15d5f080
4370 changed files with 0 additions and 0 deletions
8
spec/ruby/library/singleton/allocate_spec.rb
Normal file
8
spec/ruby/library/singleton/allocate_spec.rb
Normal file
|
@ -0,0 +1,8 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
describe "Singleton.allocate" do
|
||||
it "is a private method" do
|
||||
lambda { SingletonSpecs::MyClass.allocate }.should raise_error(NoMethodError)
|
||||
end
|
||||
end
|
8
spec/ruby/library/singleton/clone_spec.rb
Normal file
8
spec/ruby/library/singleton/clone_spec.rb
Normal file
|
@ -0,0 +1,8 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
describe "Singleton#clone" do
|
||||
it "is prevented" do
|
||||
lambda { SingletonSpecs::MyClass.instance.clone }.should raise_error(TypeError)
|
||||
end
|
||||
end
|
14
spec/ruby/library/singleton/dump_spec.rb
Normal file
14
spec/ruby/library/singleton/dump_spec.rb
Normal file
|
@ -0,0 +1,14 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
describe "Singleton#_dump" do
|
||||
|
||||
it "returns an empty string" do
|
||||
SingletonSpecs::MyClass.instance.send(:_dump).should == ""
|
||||
end
|
||||
|
||||
it "returns an empty string from a singleton subclass" do
|
||||
SingletonSpecs::MyClassChild.instance.send(:_dump).should == ""
|
||||
end
|
||||
|
||||
end
|
8
spec/ruby/library/singleton/dup_spec.rb
Normal file
8
spec/ruby/library/singleton/dup_spec.rb
Normal file
|
@ -0,0 +1,8 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
describe "Singleton#dup" do
|
||||
it "is prevented" do
|
||||
lambda { SingletonSpecs::MyClass.instance.dup }.should raise_error(TypeError)
|
||||
end
|
||||
end
|
18
spec/ruby/library/singleton/fixtures/classes.rb
Normal file
18
spec/ruby/library/singleton/fixtures/classes.rb
Normal file
|
@ -0,0 +1,18 @@
|
|||
require 'singleton'
|
||||
|
||||
module SingletonSpecs
|
||||
class MyClass
|
||||
attr_accessor :data
|
||||
include Singleton
|
||||
end
|
||||
|
||||
class NewSpec
|
||||
include Singleton
|
||||
end
|
||||
|
||||
class MyClassChild < MyClass
|
||||
end
|
||||
|
||||
class NotInstantiated < MyClass
|
||||
end
|
||||
end
|
30
spec/ruby/library/singleton/instance_spec.rb
Normal file
30
spec/ruby/library/singleton/instance_spec.rb
Normal file
|
@ -0,0 +1,30 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
describe "Singleton.instance" do
|
||||
it "returns an instance of the singleton class" do
|
||||
SingletonSpecs::MyClass.instance.should be_kind_of(SingletonSpecs::MyClass)
|
||||
end
|
||||
|
||||
it "returns the same instance for multiple calls to instance" do
|
||||
SingletonSpecs::MyClass.instance.should equal(SingletonSpecs::MyClass.instance)
|
||||
end
|
||||
|
||||
it "returns an instance of the singleton's subclasses" do
|
||||
SingletonSpecs::MyClassChild.instance.should be_kind_of(SingletonSpecs::MyClassChild)
|
||||
end
|
||||
|
||||
it "returns the same instance for multiple class to instance on subclasses" do
|
||||
SingletonSpecs::MyClassChild.instance.should equal(SingletonSpecs::MyClassChild.instance)
|
||||
end
|
||||
|
||||
it "returns an instance of the singleton's clone" do
|
||||
klone = SingletonSpecs::MyClassChild.clone
|
||||
klone.instance.should be_kind_of(klone)
|
||||
end
|
||||
|
||||
it "returns the same instance for multiple class to instance on clones" do
|
||||
klone = SingletonSpecs::MyClassChild.clone
|
||||
klone.instance.should equal(klone.instance)
|
||||
end
|
||||
end
|
21
spec/ruby/library/singleton/load_spec.rb
Normal file
21
spec/ruby/library/singleton/load_spec.rb
Normal file
|
@ -0,0 +1,21 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
# TODO: change to a.should be_equal(b)
|
||||
# TODO: write spec for cloning classes and calling private methods
|
||||
# TODO: write spec for private_methods not showing up via extended
|
||||
describe "Singleton._load" do
|
||||
it "returns the singleton instance for anything passed in" do
|
||||
klass = SingletonSpecs::MyClass
|
||||
klass._load("").should equal(klass.instance)
|
||||
klass._load("42").should equal(klass.instance)
|
||||
klass._load(42).should equal(klass.instance)
|
||||
end
|
||||
|
||||
it "returns the singleton instance for anything passed in to subclass" do
|
||||
subklass = SingletonSpecs::MyClassChild
|
||||
subklass._load("").should equal(subklass.instance)
|
||||
subklass._load("42").should equal(subklass.instance)
|
||||
subklass._load(42).should equal(subklass.instance)
|
||||
end
|
||||
end
|
8
spec/ruby/library/singleton/new_spec.rb
Normal file
8
spec/ruby/library/singleton/new_spec.rb
Normal file
|
@ -0,0 +1,8 @@
|
|||
require File.expand_path('../../../spec_helper', __FILE__)
|
||||
require File.expand_path('../fixtures/classes', __FILE__)
|
||||
|
||||
describe "Singleton.new" do
|
||||
it "is a private method" do
|
||||
lambda { SingletonSpecs::NewSpec.new }.should raise_error(NoMethodError)
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue