Class: Grntest::ExecutionContext

Inherits:
Object
  • Object
show all
Defined in:
lib/grntest/execution-context.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeExecutionContext

Returns a new instance of ExecutionContext.



30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/grntest/execution-context.rb', line 30

def initialize
  @logging = true
  @base_directory = Pathname(".")
  @temporary_directory_path = Pathname("tmp")
  @db_path = Pathname("db")
  @groonga_suggest_create_dataset = "groonga-suggest-create-dataset"
  @n_nested = 0
  @result = []
  @output_type = "json"
  @log = nil
  @query_log = nil
  @on_error = :default
  @abort_tag = nil
  @timeout = 0
  @default_timeout = 0
  @omitted = false
  @suppress_backtrace = true
  @collect_query_log = false
  @debug = false
end

Instance Attribute Details

#abort_tagObject

Returns the value of attribute abort_tag.



24
25
26
# File 'lib/grntest/execution-context.rb', line 24

def abort_tag
  @abort_tag
end

#base_directoryObject

Returns the value of attribute base_directory.



19
20
21
# File 'lib/grntest/execution-context.rb', line 19

def base_directory
  @base_directory
end

#collect_query_log=(value) ⇒ Object (writeonly)

Sets the attribute collect_query_log

Parameters:

  • value

    the value to set the attribute collect_query_log to.



28
29
30
# File 'lib/grntest/execution-context.rb', line 28

def collect_query_log=(value)
  @collect_query_log = value
end

#db_pathObject

Returns the value of attribute db_path.



19
20
21
# File 'lib/grntest/execution-context.rb', line 19

def db_path
  @db_path
end

#debug=(value) ⇒ Object (writeonly)

Sets the attribute debug

Parameters:

  • value

    the value to set the attribute debug to.



29
30
31
# File 'lib/grntest/execution-context.rb', line 29

def debug=(value)
  @debug = value
end

#default_timeoutObject

Returns the value of attribute default_timeout.



26
27
28
# File 'lib/grntest/execution-context.rb', line 26

def default_timeout
  @default_timeout
end

#groonga_suggest_create_datasetObject

Returns the value of attribute groonga_suggest_create_dataset.



20
21
22
# File 'lib/grntest/execution-context.rb', line 20

def groonga_suggest_create_dataset
  @groonga_suggest_create_dataset
end

#logging=(value) ⇒ Object (writeonly)

Sets the attribute logging

Parameters:

  • value

    the value to set the attribute logging to.



18
19
20
# File 'lib/grntest/execution-context.rb', line 18

def logging=(value)
  @logging = value
end

#on_errorObject

Returns the value of attribute on_error.



23
24
25
# File 'lib/grntest/execution-context.rb', line 23

def on_error
  @on_error
end

#output_typeObject

Returns the value of attribute output_type.



22
23
24
# File 'lib/grntest/execution-context.rb', line 22

def output_type
  @output_type
end

#resultObject

Returns the value of attribute result.



21
22
23
# File 'lib/grntest/execution-context.rb', line 21

def result
  @result
end

#suppress_backtrace=(value) ⇒ Object (writeonly)

Sets the attribute suppress_backtrace

Parameters:

  • value

    the value to set the attribute suppress_backtrace to.



27
28
29
# File 'lib/grntest/execution-context.rb', line 27

def suppress_backtrace=(value)
  @suppress_backtrace = value
end

#temporary_directory_pathObject

Returns the value of attribute temporary_directory_path.



19
20
21
# File 'lib/grntest/execution-context.rb', line 19

def temporary_directory_path
  @temporary_directory_path
end

#timeoutObject

Returns the value of attribute timeout.



25
26
27
# File 'lib/grntest/execution-context.rb', line 25

def timeout
  @timeout
end

Instance Method Details

#abortObject



114
115
116
# File 'lib/grntest/execution-context.rb', line 114

def abort
  throw @abort_tag
end

#close_logsObject



118
119
120
121
122
123
124
125
126
127
128
# File 'lib/grntest/execution-context.rb', line 118

def close_logs
  if @log
    @log.close
    @log = nil
  end

  if @query_log
    @query_log.close
    @query_log = nil
  end
end

#collect_query_log?Boolean

Returns:

  • (Boolean)


59
60
61
# File 'lib/grntest/execution-context.rb', line 59

def collect_query_log?
  @collect_query_log
end

#debug?Boolean

Returns:

  • (Boolean)


63
64
65
# File 'lib/grntest/execution-context.rb', line 63

def debug?
  @debug
end

#errorObject



102
103
104
105
106
107
# File 'lib/grntest/execution-context.rb', line 102

def error
  case @on_error
  when :omit
    omit
  end
end

#executeObject



67
68
69
70
71
72
# File 'lib/grntest/execution-context.rb', line 67

def execute
  @n_nested += 1
  yield
ensure
  @n_nested -= 1
end

#logObject



82
83
84
# File 'lib/grntest/execution-context.rb', line 82

def log
  @log ||= File.open(log_path.to_s, "a+")
end

#log_pathObject



78
79
80
# File 'lib/grntest/execution-context.rb', line 78

def log_path
  @temporary_directory_path + "groonga.log"
end

#logging?Boolean

Returns:

  • (Boolean)


51
52
53
# File 'lib/grntest/execution-context.rb', line 51

def logging?
  @logging
end

#omitObject



109
110
111
112
# File 'lib/grntest/execution-context.rb', line 109

def omit
  @omitted = true
  abort
end

#omitted?Boolean

Returns:

  • (Boolean)


98
99
100
# File 'lib/grntest/execution-context.rb', line 98

def omitted?
  @omitted
end

#query_logObject



90
91
92
# File 'lib/grntest/execution-context.rb', line 90

def query_log
  @query_log ||= File.open(query_log_path.to_s, "a+")
end

#query_log_pathObject



86
87
88
# File 'lib/grntest/execution-context.rb', line 86

def query_log_path
  @temporary_directory_path + "groonga.query.log"
end

#relative_db_pathObject



94
95
96
# File 'lib/grntest/execution-context.rb', line 94

def relative_db_path
  @db_path.relative_path_from(@temporary_directory_path)
end

#suppress_backtrace?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'lib/grntest/execution-context.rb', line 55

def suppress_backtrace?
  @suppress_backtrace or debug?
end

#top_level?Boolean

Returns:

  • (Boolean)


74
75
76
# File 'lib/grntest/execution-context.rb', line 74

def top_level?
  @n_nested == 1
end