Class: Test::Spec::TestCase

Inherits:
Object show all
Defined in:
lib/test-spec/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.



309
310
311
312
313
314
315
316
317
# File 'lib/test-spec/test/spec.rb', line 309

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.



226
227
228
# File 'lib/test-spec/test/spec.rb', line 226

def name
  @name
end

#positionObject (readonly)

Returns the value of attribute position.



227
228
229
# File 'lib/test-spec/test/spec.rb', line 227

def position
  @position
end

#testcaseObject (readonly)

Returns the value of attribute testcase.



225
226
227
# File 'lib/test-spec/test/spec.rb', line 225

def testcase
  @testcase
end

Instance Method Details

#add(&block) ⇒ Object

Raises:

  • (ArgumentError)


319
320
321
322
323
324
# File 'lib/test-spec/test/spec.rb', line 319

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

  @testcase.class_eval(&block)
  self
end