teuton 2.7.3 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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