Module: CucumberExt

Included in:
Cucumber::Runtime::ForProgrammingLanguages, Cucumber::StepMother
Defined in:
lib/cucumber.rb

Class Method Summary collapse

Class Method Details

.add_delete_images_to_results(klass) ⇒ Object



9
10
11
12
13
14
15
16
17
# File 'lib/cucumber.rb', line 9

def self.add_delete_images_to_results(klass)
  klass.class_eval {
    define_method('delete_images') {
      Cucumber::Constants::IMAGES.each { |i| 
        Cucumber::Constants::IMAGES.delete(i) 
      }
    }
  }
end

.add_images_to_results(klass) ⇒ Object



28
29
30
31
32
33
34
35
# File 'lib/cucumber.rb', line 28

def self.add_images_to_results(klass)
  klass.class_eval {
    define_method('images') {
      #set_images
      Cucumber::Constants::IMAGES #@images
    }
  }
end

.add_push_image_to_results(klass) ⇒ Object



37
38
39
40
41
42
43
44
45
# File 'lib/cucumber.rb', line 37

def self.add_push_image_to_results(klass)
  klass.class_eval {
    define_method('add_image') { |params={}, &block|
      raise ArgumentError unless params.has_key?(:src)
      raise ArgumentError unless params.has_key?(:label)
      Cucumber::Constants::IMAGES << {:src => params[:src], :label => params[:label]}
    }
  }
end

.add_set_images_to_results(klass) ⇒ Object



20
21
22
23
24
25
26
# File 'lib/cucumber.rb', line 20

def self.add_set_images_to_results(klass)
  klass.class_eval {
    define_method('set_images') {
      @images = [] unless @images.kind_of?(Array)
    }
  }
end

.included(obj) ⇒ Object



2
3
4
5
6
7
# File 'lib/cucumber.rb', line 2

def self.included(obj)
  #add_set_images_to_results(obj)
  add_images_to_results(obj)
  add_push_image_to_results(obj)
  add_delete_images_to_results(obj)
end