Class: Test::Spec::TestCase

Inherits:
Object show all
Defined in:
lib/test/spec.rb

Defined Under Namespace

Modules: ClassMethods, InstanceMethods

Constant Summary collapse

@@POSITION =
0

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(name, parent = nil) ⇒ TestCase

Returns a new instance of TestCase.

[View source]

397
398
399
400
401
402
403
404
405
# File 'lib/test/spec.rb', line 397

def initialize(name, parent=nil)
  @testcase = Class.new(Test::Unit::TestCase) {
    include InstanceMethods
    extend ClassMethods
  }

  @@POSITION = @@POSITION + 1
  @testcase.init(name, @@POSITION, parent)
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.


308
309
310
# File 'lib/test/spec.rb', line 308

def name
  @name
end

#positionObject (readonly)

Returns the value of attribute position.


309
310
311
# File 'lib/test/spec.rb', line 309

def position
  @position
end

#testcaseObject (readonly)

Returns the value of attribute testcase.


307
308
309
# File 'lib/test/spec.rb', line 307

def testcase
  @testcase
end

Instance Method Details

#add(&block) ⇒ Object

Raises:

  • (ArgumentError)
[View source]

407
408
409
410
411
412
# File 'lib/test/spec.rb', line 407

def add(&block)
  raise ArgumentError, "context needs a block"  if block.nil?

  @testcase.class_eval(&block)
  self
end