Navigation Menu

Skip to content

Commit

Permalink
Introduce @enable(disable)_completion and @enable(disable)_validation…
Browse files Browse the repository at this point in the history
… directives
  • Loading branch information
piroor committed Jan 16, 2015
1 parent 1f04434 commit 3b6aed4
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 2 deletions.
12 changes: 12 additions & 0 deletions lib/drntest/directive.rb
Expand Up @@ -55,4 +55,16 @@ def initialize(version)
@version = version
end
end

class EnableCompletionDirective < Directive
end

class DisableCompletionDirective < Directive
end

class EnableValidationDirective < Directive
end

class DisableValidationDirective < Directive
end
end
18 changes: 16 additions & 2 deletions lib/drntest/test-executor.rb
Expand Up @@ -63,6 +63,8 @@ def initialize(client, config, results, abort_tag)
@requests = []
@responses = []
@logging = true
@completion = nil
@validation = nil
end

def execute(operation)
Expand Down Expand Up @@ -98,19 +100,31 @@ def execute_directive(directive)
@results.omit(message)
abort_execution
end
when EnableCompletionDirective
@completion = true
when DisableCompletionDirective
@completion = false
when EnableValidationDirective
@validation = true
when DisableValidationDirective
@validation = false
end
end

def execute_request(request)
options = {}
options[:completion] = @completion unless @completion.nil?
options[:validation] = @validation unless @validation.nil?

if @logging
responses = []
request_process = @client.request(request) do |raw_response|
request_process = @client.request(request, options) do |raw_response|
responses << clean_response(request, raw_response)
end
request_process.wait
@responses.concat(normalize_responses(request, responses))
else
@requests << @client.request(request) do
@requests << @client.request(request, options) do
end
end
end
Expand Down
8 changes: 8 additions & 0 deletions lib/drntest/test-loader.rb
Expand Up @@ -91,6 +91,14 @@ def parse_directive(type, options)
OmitDirective.new(options.first)
when :require_catalog_version
RequireCatalogVersionDirective.new(Integer(options.first))
when :enable_completion
EnableCompletionDirective.new
when :disable_completion
DisableCompletionDirective.new
when :enable_validation
EnableValidationDirective.new
when :disable_validation
DisableValidationDirective.new
else
UnknownDirective.new(type, options)
end
Expand Down

0 comments on commit 3b6aed4

Please sign in to comment.