teuton 2.7.3 → 2.9.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +4 -4
- data/docs/changelog/changelog.1.md +119 -0
- data/docs/changelog/changelog.2.md +105 -0
- data/docs/diagram.md +10 -10
- data/docs/dsl/expect.md +76 -23
- data/docs/dsl/export.md +6 -3
- data/docs/dsl/result.md +24 -30
- data/docs/dsl/send.md +34 -23
- data/docs/learn/02-target.md +32 -27
- data/docs/learn/13-feedback.md +8 -9
- data/docs/learn/25-expect-result.md +39 -0
- data/docs/learn/26-expect_sequence.md +79 -0
- data/docs/learn/27-run_script.md +91 -0
- data/docs/learn/28-upload.md +55 -0
- data/docs/learn/README.md +4 -15
- data/docs/videos.md +14 -8
- data/lib/teuton/case/case.rb +3 -3
- data/lib/teuton/case/config.rb +0 -5
- data/lib/teuton/case/dsl/all.rb +5 -1
- data/lib/teuton/case/dsl/expect.rb +20 -33
- data/lib/teuton/case/dsl/expect_exitcode.rb +31 -0
- data/lib/teuton/case/dsl/expect_sequence.rb +173 -0
- data/lib/teuton/case/dsl/getset.rb +0 -1
- data/lib/teuton/case/dsl/host.rb +5 -0
- data/lib/teuton/case/dsl/macro.rb +7 -4
- data/lib/teuton/case/dsl/run_script.rb +35 -0
- data/lib/teuton/case/dsl/send.rb +3 -3
- data/lib/teuton/case/dsl/upload.rb +42 -0
- data/lib/teuton/case/dsl/weight.rb +12 -0
- data/lib/teuton/case/execute/execute_ssh.rb +11 -7
- data/lib/teuton/case/host.rb +68 -0
- data/lib/teuton/case/play.rb +2 -6
- data/lib/teuton/{utils → case}/result/ext_array.rb +0 -1
- data/lib/teuton/{utils → case}/result/ext_compare.rb +0 -1
- data/lib/teuton/{utils → case}/result/ext_filter.rb +0 -2
- data/lib/teuton/{utils → case}/result/result.rb +13 -21
- data/lib/teuton/check/checker.rb +82 -0
- data/lib/teuton/check/dsl/all.rb +37 -0
- data/lib/teuton/check/{builtin.rb → dsl/builtin.rb} +1 -3
- data/lib/teuton/check/dsl/expect.rb +90 -0
- data/lib/teuton/check/dsl/expect_sequence.rb +29 -0
- data/lib/teuton/check/dsl/getset.rb +23 -0
- data/lib/teuton/check/dsl/run.rb +35 -0
- data/lib/teuton/check/main.rb +29 -0
- data/lib/teuton/check/show.rb +75 -100
- data/lib/teuton/{utils → deprecated}/application.rb +0 -6
- data/lib/teuton/deprecated/application_test.rb +32 -0
- data/lib/teuton/readme/dsl/all.rb +32 -0
- data/lib/teuton/readme/dsl/expect.rb +29 -0
- data/lib/teuton/readme/dsl/getset.rb +33 -0
- data/lib/teuton/readme/dsl/run.rb +51 -0
- data/lib/teuton/readme/lang.rb +8 -10
- data/lib/teuton/readme/main.rb +27 -0
- data/lib/teuton/readme/readme.rb +31 -58
- data/lib/teuton/readme/result.rb +7 -0
- data/lib/teuton/report/formatter/default/txt.rb +2 -2
- data/lib/teuton/utils/configfile_reader.rb +8 -4
- data/lib/teuton/utils/logger.rb +32 -0
- data/lib/teuton/utils/verbose.rb +1 -1
- data/lib/teuton/version.rb +1 -1
- data/lib/teuton.rb +6 -5
- metadata +45 -37
- data/docs/CHANGELOG.md +0 -10
- data/docs/changelog/v2.0.md +0 -18
- data/docs/changelog/v2.1.md +0 -54
- data/docs/changelog/v2.2.md +0 -42
- data/docs/changelog/v2.3.md +0 -10
- data/docs/changelog/v2.4.md +0 -41
- data/docs/changelog/v2.5.md +0 -6
- data/docs/changelog/v2.6.md +0 -4
- data/docs/changelog/v2.7.md +0 -23
- data/docs/changelog/version2.1.md +0 -4
- data/docs/learn/videos.md +0 -13
- data/lib/teuton/case/execute/copy_ssh.rb +0 -70
- data/lib/teuton/check/dsl.rb +0 -112
- data/lib/teuton/check/laboratory.rb +0 -59
- data/lib/teuton/readme/dsl.rb +0 -126
- /data/lib/teuton/case/dsl/{goto.rb → run.rb} +0 -0
- /data/lib/teuton/{case/deprecated → deprecated}/runner.rb +0 -0
- /data/lib/teuton/{case/deprecated → deprecated}/utils.rb +0 -0
@@ -0,0 +1,27 @@
|
|
1
|
+
require_relative "../utils/project"
|
2
|
+
require_relative "readme"
|
3
|
+
|
4
|
+
def use(filename)
|
5
|
+
filename += ".rb"
|
6
|
+
rbfiles = File.join(Project.value[:project_path], "**", filename)
|
7
|
+
files = Dir.glob(rbfiles)
|
8
|
+
use = []
|
9
|
+
files.sort.each { |f| use << f if f.include?(filename) }
|
10
|
+
require_relative use[0]
|
11
|
+
Project.value[:uses] << use[0]
|
12
|
+
end
|
13
|
+
|
14
|
+
def define_macro(name, *args, &block)
|
15
|
+
Project.value[:macros][name] = {args: args, block: block}
|
16
|
+
end
|
17
|
+
|
18
|
+
def group(name, &block)
|
19
|
+
Project.value[:groups] << {name: name, block: block}
|
20
|
+
end
|
21
|
+
alias task group
|
22
|
+
|
23
|
+
def start(&block)
|
24
|
+
# don't do nothing
|
25
|
+
end
|
26
|
+
# alias_method "play", "start" # REVISE THIS
|
27
|
+
alias play start
|
data/lib/teuton/readme/readme.rb
CHANGED
@@ -1,44 +1,19 @@
|
|
1
|
+
require_relative "../utils/logger"
|
1
2
|
require_relative "../utils/project"
|
2
3
|
require_relative "../utils/configfile_reader"
|
3
|
-
require_relative "../
|
4
|
+
require_relative "../case/dsl/macro"
|
4
5
|
require_relative "../version"
|
5
|
-
require_relative "dsl"
|
6
|
+
require_relative "dsl/all"
|
6
7
|
require_relative "lang"
|
7
|
-
|
8
|
-
def use(filename)
|
9
|
-
filename += ".rb"
|
10
|
-
rbfiles = File.join(Project.value[:project_path], "**", filename)
|
11
|
-
files = Dir.glob(rbfiles)
|
12
|
-
use = []
|
13
|
-
files.sort.each { |f| use << f if f.include?(filename) }
|
14
|
-
require_relative use[0]
|
15
|
-
Project.value[:uses] << use[0]
|
16
|
-
end
|
17
|
-
|
18
|
-
def define_macro(name, *args, &block)
|
19
|
-
puts "macro: #{name}"
|
20
|
-
Project.value[:macros][name] = {args: args, block: block}
|
21
|
-
end
|
22
|
-
|
23
|
-
def group(name, &block)
|
24
|
-
Project.value[:groups] << {name: name, block: block}
|
25
|
-
end
|
26
|
-
alias task group
|
27
|
-
|
28
|
-
def start(&block)
|
29
|
-
# don't do nothing
|
30
|
-
end
|
31
|
-
# alias_method "play", "start" # REVISE THIS
|
32
|
-
alias play start
|
8
|
+
require_relative "result"
|
33
9
|
|
34
10
|
class Readme
|
35
|
-
|
11
|
+
include DSL
|
12
|
+
include ReadmeDSL
|
36
13
|
attr_reader :result
|
37
14
|
attr_reader :data
|
38
15
|
|
39
16
|
def initialize(script_path, config_path)
|
40
|
-
# script_path Path to main rb file (start.rb)
|
41
|
-
# config_path Path to main config file (config.yaml)
|
42
17
|
@path = {}
|
43
18
|
@path[:script] = script_path
|
44
19
|
@path[:dirname] = File.dirname(script_path)
|
@@ -57,13 +32,11 @@ class Readme
|
|
57
32
|
private
|
58
33
|
|
59
34
|
def reset
|
60
|
-
# app = Application.instance
|
61
35
|
@config = ConfigFileReader.read(Project.value[:config_path])
|
62
36
|
@verbose = Project.value[:verbose]
|
63
|
-
@result =
|
37
|
+
@result = ReadmeResult.new
|
64
38
|
@data = {}
|
65
39
|
@data[:macros] = []
|
66
|
-
@data[:logs] = []
|
67
40
|
@data[:groups] = []
|
68
41
|
@data[:play] = []
|
69
42
|
reset_action
|
@@ -74,11 +47,11 @@ class Readme
|
|
74
47
|
end
|
75
48
|
|
76
49
|
def process_content
|
77
|
-
Project.value[:groups].each do |
|
78
|
-
@current = {name:
|
50
|
+
Project.value[:groups].each do |group|
|
51
|
+
@current = {name: group[:name], readme: [], actions: []}
|
79
52
|
@data[:groups] << @current
|
80
53
|
reset_action
|
81
|
-
instance_eval(&
|
54
|
+
instance_eval(&group[:block])
|
82
55
|
end
|
83
56
|
end
|
84
57
|
|
@@ -88,12 +61,11 @@ class Readme
|
|
88
61
|
|
89
62
|
def show_head
|
90
63
|
puts "```"
|
91
|
-
puts format(Lang.get(:testname), Project.value[:test_name])
|
92
64
|
puts format(Lang.get(:date), Time.now)
|
93
65
|
puts format(Lang.get(:version), Teuton::VERSION)
|
94
66
|
puts "```"
|
95
67
|
puts "\n"
|
96
|
-
puts "# #{Project.value[:test_name]}\n"
|
68
|
+
puts "# Test: #{Project.value[:test_name]}\n"
|
97
69
|
|
98
70
|
i = 1
|
99
71
|
unless @required_hosts.empty?
|
@@ -114,7 +86,6 @@ class Readme
|
|
114
86
|
@cases_params.sort!
|
115
87
|
puts Lang.get(:params)
|
116
88
|
@cases_params.uniq.each { |i| puts format("* %s", i) }
|
117
|
-
puts "\n> NOTE: Save every 'param: value' into config file."
|
118
89
|
end
|
119
90
|
end
|
120
91
|
|
@@ -122,7 +93,7 @@ class Readme
|
|
122
93
|
@data[:groups].each do |group|
|
123
94
|
next if group[:actions].empty?
|
124
95
|
|
125
|
-
puts "\n## #{group[:name].capitalize}\n
|
96
|
+
puts "\n## #{group[:name].capitalize}\n"
|
126
97
|
group[:readme].each { |line| puts "#{line}\n" }
|
127
98
|
previous_host = nil
|
128
99
|
group[:actions].each_with_index do |item, index|
|
@@ -133,10 +104,8 @@ class Readme
|
|
133
104
|
previous_host = item[:host] || "null"
|
134
105
|
puts format(Lang.get(:goto), previous_host.upcase)
|
135
106
|
end
|
136
|
-
|
137
|
-
|
138
|
-
weight = "(x#{item[:weight]}) " if item[:weight].to_i != 1
|
139
|
-
last = (item[:target].end_with?(".") ? "" : ".")
|
107
|
+
weight = "(x#{item[:weight]}) "
|
108
|
+
last = item[:target].end_with?(".", ":") ? "" : "."
|
140
109
|
puts "* #{weight}#{item[:target]}#{last}"
|
141
110
|
item[:readme].each { |line| puts " * #{line}\n" }
|
142
111
|
end
|
@@ -144,21 +113,25 @@ class Readme
|
|
144
113
|
end
|
145
114
|
|
146
115
|
def show_tail
|
147
|
-
return if @global_params.
|
116
|
+
return if (@global_params.size + @setted_params.size).zero?
|
148
117
|
|
149
118
|
puts "\n---"
|
150
119
|
puts "# ANEXO"
|
151
|
-
puts "\n##
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
120
|
+
puts "\n## Params"
|
121
|
+
|
122
|
+
if @global_params.size.positive?
|
123
|
+
puts Lang.get(:global_params)
|
124
|
+
puts "\n"
|
125
|
+
puts "| Param | Value |"
|
126
|
+
puts "| --- | --- |"
|
127
|
+
@global_params.each_pair { |k, v| puts "|#{k}|#{v}|" }
|
128
|
+
end
|
129
|
+
if @setted_params.size.positive?
|
130
|
+
puts Lang.get(:created_params)
|
131
|
+
puts "\n"
|
132
|
+
puts "| Param | Value |"
|
133
|
+
puts "| --- | --- |"
|
134
|
+
@setted_params.each_pair { |k, v| puts "|#{k}|#{v}|" }
|
135
|
+
end
|
163
136
|
end
|
164
137
|
end
|
@@ -94,8 +94,8 @@ class TXTFormatter < ArrayFormatter
|
|
94
94
|
w "#{tab * 4}Output : #{i[:output]}\n"
|
95
95
|
w "#{tab * 4}Duration : #{i[:duration]} (#{i[:conn_type]})\n"
|
96
96
|
w "#{tab * 4}Alterations : #{i[:alterations]}\n"
|
97
|
-
w "#{tab * 4}Expected : #{i[:expected]}
|
98
|
-
w "#{tab * 4}Result : #{i[:result]}
|
97
|
+
w "#{tab * 4}Expected : #{i[:expected]}\n"
|
98
|
+
w "#{tab * 4}Result : #{i[:result]}\n"
|
99
99
|
end
|
100
100
|
end
|
101
101
|
end
|
@@ -30,11 +30,15 @@ module ConfigFileReader
|
|
30
30
|
def self.read_yaml(filepath)
|
31
31
|
begin
|
32
32
|
data = YAML.load(File.open(filepath))
|
33
|
+
# data = YAML.safe_load(
|
34
|
+
# File.open(filepath),
|
35
|
+
# permitted_classes: [Array, Date, Hash, Symbol]
|
36
|
+
# )
|
33
37
|
rescue => e
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
+
warn "\n" + ("=" * 80)
|
39
|
+
warn "[ERROR] ConfigFileReader#read <#{filepath}>"
|
40
|
+
warn " I suggest to revise file format!"
|
41
|
+
warn " #{e.message}\n" + ("=" * 80)
|
38
42
|
exit 1
|
39
43
|
end
|
40
44
|
data = convert_string_keys_to_symbol(data)
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require "rainbow"
|
2
|
+
|
3
|
+
class Logger
|
4
|
+
@verbose = true
|
5
|
+
|
6
|
+
def self.verbose=(value)
|
7
|
+
@verbose = value
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.verbose
|
11
|
+
@verbose
|
12
|
+
end
|
13
|
+
|
14
|
+
def self.info(message)
|
15
|
+
puts message if @verbose
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.warn(message)
|
19
|
+
text = Rainbow(message).bright.yellow
|
20
|
+
info(text)
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.error(message)
|
24
|
+
text = Rainbow(message).bright.red
|
25
|
+
info(text)
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.debug(message)
|
29
|
+
text = Rainbow(message).white
|
30
|
+
info(text)
|
31
|
+
end
|
32
|
+
end
|
data/lib/teuton/utils/verbose.rb
CHANGED
data/lib/teuton/version.rb
CHANGED
data/lib/teuton.rb
CHANGED
@@ -8,15 +8,16 @@ module Teuton
|
|
8
8
|
|
9
9
|
def self.check(projectpath, options = {})
|
10
10
|
Project.add_input_params(projectpath, options)
|
11
|
-
require_dsl_and_script("teuton/check/
|
12
|
-
|
11
|
+
require_dsl_and_script("teuton/check/main")
|
12
|
+
require_relative "teuton/check/checker"
|
13
|
+
checker = Checker.new(
|
13
14
|
Project.value[:script_path],
|
14
15
|
Project.value[:config_path]
|
15
16
|
)
|
16
17
|
if options["onlyconfig"]
|
17
|
-
|
18
|
+
checker.show_onlyconfig
|
18
19
|
else
|
19
|
-
|
20
|
+
checker.show
|
20
21
|
end
|
21
22
|
end
|
22
23
|
|
@@ -28,7 +29,7 @@ module Teuton
|
|
28
29
|
|
29
30
|
def self.readme(projectpath, options = {})
|
30
31
|
Project.add_input_params(projectpath, options)
|
31
|
-
require_dsl_and_script("teuton/readme/
|
32
|
+
require_dsl_and_script("teuton/readme/main") # Define DSL
|
32
33
|
readme = Readme.new(
|
33
34
|
Project.value[:script_path],
|
34
35
|
Project.value[:config_path]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: teuton
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.9.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Vargas Ruiz
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-07-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rainbow
|
@@ -124,17 +124,9 @@ extensions: []
|
|
124
124
|
extra_rdoc_files:
|
125
125
|
- README.md
|
126
126
|
- LICENSE
|
127
|
-
- docs/
|
127
|
+
- docs/changelog/changelog.1.md
|
128
|
+
- docs/changelog/changelog.2.md
|
128
129
|
- docs/changelog/todo.md
|
129
|
-
- docs/changelog/v2.0.md
|
130
|
-
- docs/changelog/v2.1.md
|
131
|
-
- docs/changelog/v2.2.md
|
132
|
-
- docs/changelog/v2.3.md
|
133
|
-
- docs/changelog/v2.4.md
|
134
|
-
- docs/changelog/v2.5.md
|
135
|
-
- docs/changelog/v2.6.md
|
136
|
-
- docs/changelog/v2.7.md
|
137
|
-
- docs/changelog/version2.1.md
|
138
130
|
- docs/commands/README.md
|
139
131
|
- docs/commands/example_check.md
|
140
132
|
- docs/commands/example_run.md
|
@@ -187,24 +179,19 @@ extra_rdoc_files:
|
|
187
179
|
- docs/learn/22-result.md
|
188
180
|
- docs/learn/23-test-code.md
|
189
181
|
- docs/learn/24-test-sql.md
|
182
|
+
- docs/learn/25-expect-result.md
|
183
|
+
- docs/learn/26-expect_sequence.md
|
184
|
+
- docs/learn/27-run_script.md
|
185
|
+
- docs/learn/28-upload.md
|
190
186
|
- docs/learn/README.md
|
191
|
-
- docs/learn/videos.md
|
192
187
|
- docs/videos.md
|
193
188
|
files:
|
194
189
|
- LICENSE
|
195
190
|
- README.md
|
196
191
|
- bin/teuton
|
197
|
-
- docs/
|
192
|
+
- docs/changelog/changelog.1.md
|
193
|
+
- docs/changelog/changelog.2.md
|
198
194
|
- docs/changelog/todo.md
|
199
|
-
- docs/changelog/v2.0.md
|
200
|
-
- docs/changelog/v2.1.md
|
201
|
-
- docs/changelog/v2.2.md
|
202
|
-
- docs/changelog/v2.3.md
|
203
|
-
- docs/changelog/v2.4.md
|
204
|
-
- docs/changelog/v2.5.md
|
205
|
-
- docs/changelog/v2.6.md
|
206
|
-
- docs/changelog/v2.7.md
|
207
|
-
- docs/changelog/version2.1.md
|
208
195
|
- docs/commands/README.md
|
209
196
|
- docs/commands/example_check.md
|
210
197
|
- docs/commands/example_run.md
|
@@ -257,8 +244,11 @@ files:
|
|
257
244
|
- docs/learn/22-result.md
|
258
245
|
- docs/learn/23-test-code.md
|
259
246
|
- docs/learn/24-test-sql.md
|
247
|
+
- docs/learn/25-expect-result.md
|
248
|
+
- docs/learn/26-expect_sequence.md
|
249
|
+
- docs/learn/27-run_script.md
|
250
|
+
- docs/learn/28-upload.md
|
260
251
|
- docs/learn/README.md
|
261
|
-
- docs/learn/videos.md
|
262
252
|
- docs/videos.md
|
263
253
|
- lib/teuton.rb
|
264
254
|
- lib/teuton/case/builtin/main.rb
|
@@ -270,24 +260,32 @@ files:
|
|
270
260
|
- lib/teuton/case/case.rb
|
271
261
|
- lib/teuton/case/close.rb
|
272
262
|
- lib/teuton/case/config.rb
|
273
|
-
- lib/teuton/case/deprecated/runner.rb
|
274
|
-
- lib/teuton/case/deprecated/utils.rb
|
275
263
|
- lib/teuton/case/dsl/all.rb
|
276
264
|
- lib/teuton/case/dsl/expect.rb
|
265
|
+
- lib/teuton/case/dsl/expect_exitcode.rb
|
266
|
+
- lib/teuton/case/dsl/expect_sequence.rb
|
277
267
|
- lib/teuton/case/dsl/getset.rb
|
278
|
-
- lib/teuton/case/dsl/
|
268
|
+
- lib/teuton/case/dsl/host.rb
|
279
269
|
- lib/teuton/case/dsl/log.rb
|
280
270
|
- lib/teuton/case/dsl/macro.rb
|
271
|
+
- lib/teuton/case/dsl/run.rb
|
272
|
+
- lib/teuton/case/dsl/run_script.rb
|
281
273
|
- lib/teuton/case/dsl/send.rb
|
282
274
|
- lib/teuton/case/dsl/target.rb
|
283
275
|
- lib/teuton/case/dsl/unique.rb
|
284
|
-
- lib/teuton/case/
|
276
|
+
- lib/teuton/case/dsl/upload.rb
|
277
|
+
- lib/teuton/case/dsl/weight.rb
|
285
278
|
- lib/teuton/case/execute/execute_base.rb
|
286
279
|
- lib/teuton/case/execute/execute_local.rb
|
287
280
|
- lib/teuton/case/execute/execute_manager.rb
|
288
281
|
- lib/teuton/case/execute/execute_ssh.rb
|
289
282
|
- lib/teuton/case/execute/execute_telnet.rb
|
283
|
+
- lib/teuton/case/host.rb
|
290
284
|
- lib/teuton/case/play.rb
|
285
|
+
- lib/teuton/case/result/ext_array.rb
|
286
|
+
- lib/teuton/case/result/ext_compare.rb
|
287
|
+
- lib/teuton/case/result/ext_filter.rb
|
288
|
+
- lib/teuton/case/result/result.rb
|
291
289
|
- lib/teuton/case_manager/case_manager.rb
|
292
290
|
- lib/teuton/case_manager/check_cases.rb
|
293
291
|
- lib/teuton/case_manager/dsl.rb
|
@@ -297,19 +295,33 @@ files:
|
|
297
295
|
- lib/teuton/case_manager/send_manager.rb
|
298
296
|
- lib/teuton/case_manager/show_report.rb
|
299
297
|
- lib/teuton/case_manager/utils.rb
|
300
|
-
- lib/teuton/check/
|
301
|
-
- lib/teuton/check/dsl.rb
|
302
|
-
- lib/teuton/check/
|
298
|
+
- lib/teuton/check/checker.rb
|
299
|
+
- lib/teuton/check/dsl/all.rb
|
300
|
+
- lib/teuton/check/dsl/builtin.rb
|
301
|
+
- lib/teuton/check/dsl/expect.rb
|
302
|
+
- lib/teuton/check/dsl/expect_sequence.rb
|
303
|
+
- lib/teuton/check/dsl/getset.rb
|
304
|
+
- lib/teuton/check/dsl/run.rb
|
305
|
+
- lib/teuton/check/main.rb
|
303
306
|
- lib/teuton/check/show.rb
|
304
307
|
- lib/teuton/cli.rb
|
308
|
+
- lib/teuton/deprecated/application.rb
|
309
|
+
- lib/teuton/deprecated/application_test.rb
|
310
|
+
- lib/teuton/deprecated/runner.rb
|
311
|
+
- lib/teuton/deprecated/utils.rb
|
305
312
|
- lib/teuton/files/README.md
|
306
313
|
- lib/teuton/files/config.yaml
|
307
314
|
- lib/teuton/files/start.rb
|
308
315
|
- lib/teuton/files/template/case.html
|
309
316
|
- lib/teuton/files/template/resume.html
|
310
|
-
- lib/teuton/readme/dsl.rb
|
317
|
+
- lib/teuton/readme/dsl/all.rb
|
318
|
+
- lib/teuton/readme/dsl/expect.rb
|
319
|
+
- lib/teuton/readme/dsl/getset.rb
|
320
|
+
- lib/teuton/readme/dsl/run.rb
|
311
321
|
- lib/teuton/readme/lang.rb
|
322
|
+
- lib/teuton/readme/main.rb
|
312
323
|
- lib/teuton/readme/readme.rb
|
324
|
+
- lib/teuton/readme/result.rb
|
313
325
|
- lib/teuton/report/formatter/base_formatter.rb
|
314
326
|
- lib/teuton/report/formatter/default/array.rb
|
315
327
|
- lib/teuton/report/formatter/default/colored_text.rb
|
@@ -328,14 +340,10 @@ files:
|
|
328
340
|
- lib/teuton/report/formatter/resume/yaml.rb
|
329
341
|
- lib/teuton/report/report.rb
|
330
342
|
- lib/teuton/skeleton.rb
|
331
|
-
- lib/teuton/utils/application.rb
|
332
343
|
- lib/teuton/utils/configfile_reader.rb
|
344
|
+
- lib/teuton/utils/logger.rb
|
333
345
|
- lib/teuton/utils/name_file_finder.rb
|
334
346
|
- lib/teuton/utils/project.rb
|
335
|
-
- lib/teuton/utils/result/ext_array.rb
|
336
|
-
- lib/teuton/utils/result/ext_compare.rb
|
337
|
-
- lib/teuton/utils/result/ext_filter.rb
|
338
|
-
- lib/teuton/utils/result/result.rb
|
339
347
|
- lib/teuton/utils/settings.rb
|
340
348
|
- lib/teuton/utils/verbose.rb
|
341
349
|
- lib/teuton/version.rb
|
data/docs/CHANGELOG.md
DELETED
@@ -1,10 +0,0 @@
|
|
1
|
-
[<< back](../README.md)
|
2
|
-
|
3
|
-
# Changelog
|
4
|
-
|
5
|
-
* [version 2.5](changelog/v2.5.md)
|
6
|
-
* [version 2.4](changelog/v2.4.md)
|
7
|
-
* [version 2.3](changelog/v2.3.md)
|
8
|
-
* [version 2.2](changelog/v2.2.md)
|
9
|
-
* [version 2.1](changelog/v2.1.md)
|
10
|
-
* [version 2.0](changelog/v2.0.md)
|
data/docs/changelog/v2.0.md
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
[<< back](../CHANGELOG.md)
|
2
|
-
|
3
|
-
# CHANGELOG
|
4
|
-
|
5
|
-
## 2019
|
6
|
-
|
7
|
-
|Date |Version |Changes |
|
8
|
-
|--------- |------- |------- |
|
9
|
-
| August 2019 | 2.0.4 | TEUTON project grew up and was divided into the folowing repositories: teuton, challenges, panel, resources and vagrant. Documentation has been moved into respository teuton wiki. Only maintain English docs. |
|
10
|
-
|January 2019 |1.10.0 | SysadminGame change his name by TEUTON. "project" command replaced by "teuton". Challenges (Teuton scripts) moved to "teuton-challenges" github repository. Execute "rake get_challenges" to get sample teuton challenges |
|
11
|
-
|
12
|
-
## 2017
|
13
|
-
|
14
|
-
|Date |Version |Changes |
|
15
|
-
|--------- |------- |------- |
|
16
|
-
|July 2017 |1.0.0 | New stable version |
|
17
|
-
|June 2017 |0.22.1 | * Now it's posible to use config files with YAML and JSON format |
|
18
|
-
| | | * Preparing migration of CLI command to use Thor gem |
|
data/docs/changelog/v2.1.md
DELETED
@@ -1,54 +0,0 @@
|
|
1
|
-
[<< back](../CHANGELOG.md)
|
2
|
-
|
3
|
-
# CHANGELOG teuton v 2.1
|
4
|
-
|
5
|
-
# 1. Export grades on csv file using Moodle format
|
6
|
-
|
7
|
-
* Automaticaly exports `moodle.csv` file with all cases grades, using adecuate format so it could be imported directly into Moodle platform.
|
8
|
-
* We need to configure some params like this:
|
9
|
-
|
10
|
-
```
|
11
|
-
---
|
12
|
-
:global:
|
13
|
-
:cases:
|
14
|
-
- :tt_members: ...
|
15
|
-
:tt_moodle_id: User Moodle Identity
|
16
|
-
```
|
17
|
-
|
18
|
-
# 2. readme keyword
|
19
|
-
|
20
|
-
We currently use the "teuton readme pry-folder" command to export README file from the challenge.
|
21
|
-
|
22
|
-
* This example shows how to use readme keyword to add group description or target description:
|
23
|
-
|
24
|
-
```
|
25
|
-
group "GROUPNAME" do
|
26
|
-
readme "Description for this group"
|
27
|
-
|
28
|
-
target "target1"
|
29
|
-
readme "Description for this target"
|
30
|
-
goto :host, :exec => 'id root'
|
31
|
-
expec_one 'root'
|
32
|
-
```
|
33
|
-
|
34
|
-
# 3. Installation process
|
35
|
-
|
36
|
-
* Use Bundler to install gems instead of rake.
|
37
|
-
* It will be usefull use sysadming-game as gem? And install it with `gem install teuton`.
|
38
|
-
* Vagrant: test how to use vagrant machines as case hosts.
|
39
|
-
|
40
|
-
# 4. Info sobre novedades de la versión 2.1
|
41
|
-
|
42
|
-
1. Teuton readme y dsl readme
|
43
|
-
2. Macros de define macro
|
44
|
-
3. Export yaml y html
|
45
|
-
4. Teuton --no-color
|
46
|
-
5. teuton run --case
|
47
|
-
6. teuton run --cname
|
48
|
-
7. teuton run --cpath
|
49
|
-
8. actualizar formatos de salida
|
50
|
-
9. instalación mediante gemas
|
51
|
-
10. teuton panel
|
52
|
-
11. teuton client y server
|
53
|
-
12. nuevos nombres de comandos...
|
54
|
-
13. cambio de goto a run
|
data/docs/changelog/v2.2.md
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
[<< back](../CHANGELOG.md)
|
2
|
-
|
3
|
-
# Teuton (version 2.2)
|
4
|
-
|
5
|
-
## New features
|
6
|
-
|
7
|
-
* Let's see new features examples:
|
8
|
-
* 10 result and moodle_id
|
9
|
-
* 11 get_vars
|
10
|
-
* 12 alias
|
11
|
-
* 13 include (tt_include config param)
|
12
|
-
* 14 macros
|
13
|
-
|
14
|
-
**Configuration file**
|
15
|
-
|
16
|
-
* Por defecto los valores de clave de los ficheros de configuración serán Strings en lugar de símbolos, aunque lo símbolos seguirán funcionando.
|
17
|
-
|
18
|
-
**get_vars: To think - We are not sure about this***
|
19
|
-
|
20
|
-
* "get" keyword simplification: Simplify getting and setting params process. For example: `_username_`, may be alias for `get(:username)`. Then
|
21
|
-
|
22
|
-
```
|
23
|
-
target "Create user #{_username_}"
|
24
|
-
run "id #{_username_}"
|
25
|
-
expect_one _username_
|
26
|
-
```
|
27
|
-
Same as
|
28
|
-
|
29
|
-
```
|
30
|
-
target "Create user "+get(:username)
|
31
|
-
run "id " + get(:username)
|
32
|
-
expect_one get(:username)
|
33
|
-
```
|
34
|
-
|
35
|
-
* Promocinar el proyecto:
|
36
|
-
* Documentar y hacer videos.
|
37
|
-
* Charlas y talleres
|
38
|
-
|
39
|
-
## Fixed
|
40
|
-
|
41
|
-
* Solucionar fallo en --cname
|
42
|
-
* Revisar doc options como cpanel
|
data/docs/changelog/v2.3.md
DELETED
data/docs/changelog/v2.4.md
DELETED
@@ -1,41 +0,0 @@
|
|
1
|
-
## [2.4.5]
|
2
|
-
|
3
|
-
-- FIX: "expect_nothing" was always TRUE when SSH/Telnet connections fails!
|
4
|
-
Now when SSH/Telnet connections fails result contains "SSH: NO CONNECTION!"
|
5
|
-
So "expect_nothing" will fail.
|
6
|
-
|
7
|
-
## [2.4.4]
|
8
|
-
|
9
|
-
-- Modify: teuton check output colors and exit codes.
|
10
|
-
exit code 0 = check OK
|
11
|
-
exit code 1 = check error
|
12
|
-
-- Fix teuton check docs.
|
13
|
-
|
14
|
-
## [2.4.3]
|
15
|
-
|
16
|
-
- Fix: "expect_none" without params works as "expect result.count.eq 0"
|
17
|
-
- Add: "expect_nothing" that works as "expect result.count.eq 0".
|
18
|
-
|
19
|
-
## [2.4.2]
|
20
|
-
|
21
|
-
- Fix bug with result.grep_v(Array)
|
22
|
-
|
23
|
-
## [2.4.0]
|
24
|
-
|
25
|
-
New features:
|
26
|
-
- Hide feedback from reports: `export feedback: false`
|
27
|
-
- Add new DSL keyword: expect_last, expect_fisrt
|
28
|
-
- Remove os gem.
|
29
|
-
- Change test output colors to green as use others test tools.
|
30
|
-
- Change show DSL params. Accepts one param "verbose: NUMBER" to adjust verbosity output level on screen.
|
31
|
-
|
32
|
-
New doc and example:
|
33
|
-
- 14-alias
|
34
|
-
- 16-exit_codes
|
35
|
-
|
36
|
-
Bug fixed:
|
37
|
-
- All "expect*" keywords must require 2 arguments. The second is optional.
|
38
|
-
|
39
|
-
Revise
|
40
|
-
- Remove colors to log text
|
41
|
-
- teuton readme: macros, getvars, expect_last, expect_first
|
data/docs/changelog/v2.5.md
DELETED
@@ -1,6 +0,0 @@
|
|
1
|
-
|
2
|
-
## [2.5.0]
|
3
|
-
|
4
|
-
- ADD: "tt_moodle_max_score" global configuration param. Teuton grades (0-100) are divided by this value when exporting data into "moodle.csv" output file.
|
5
|
-
- UPDATE: Revise documentation. Doc learn 10,11, 12,13 y 14. 10 result and moodle_id, 12 alias, 13 include, 14 macro, Doc tt_include
|
6
|
-
- UPDATE: Internal changes. Remove Colorize gem and replace with Rainbow.
|
data/docs/changelog/v2.6.md
DELETED