test_bench-session 2.0.0.0 → 2.1.0.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/lib/test_bench/session/controls/comment.rb +93 -4
- data/lib/test_bench/session/controls/detail.rb +79 -4
- data/lib/test_bench/session/controls/event.rb +7 -0
- data/lib/test_bench/session/controls/events/commented.rb +91 -10
- data/lib/test_bench/session/controls/events/context_finished.rb +49 -11
- data/lib/test_bench/session/controls/events/context_skipped.rb +26 -8
- data/lib/test_bench/session/controls/events/context_started.rb +44 -9
- data/lib/test_bench/session/controls/events/detailed.rb +91 -10
- data/lib/test_bench/session/controls/{capture_sink/event.rb → events/event_data.rb} +2 -2
- data/lib/test_bench/session/controls/events/failed.rb +27 -15
- data/lib/test_bench/session/controls/events/fixture_finished.rb +32 -11
- data/lib/test_bench/session/controls/events/fixture_started.rb +26 -8
- data/lib/test_bench/session/controls/events/test_finished.rb +49 -11
- data/lib/test_bench/session/controls/events/test_skipped.rb +26 -8
- data/lib/test_bench/session/controls/events/test_started.rb +44 -9
- data/lib/test_bench/session/controls/events.rb +15 -9
- data/lib/test_bench/session/controls/exception.rb +28 -10
- data/lib/test_bench/session/controls/failure.rb +5 -16
- data/lib/test_bench/session/controls/fixture.rb +7 -4
- data/lib/test_bench/session/controls/output/detail.rb +29 -0
- data/lib/test_bench/session/controls/output.rb +55 -0
- data/lib/test_bench/session/controls/random.rb +1 -1
- data/lib/test_bench/session/controls/result.rb +15 -4
- data/lib/test_bench/session/controls/{capture_sink → substitute}/path.rb +6 -3
- data/lib/test_bench/session/controls/title.rb +24 -12
- data/lib/test_bench/session/controls.rb +12 -12
- data/lib/test_bench/session/events.rb +7 -14
- data/lib/test_bench/session/output/get.rb +27 -0
- data/lib/test_bench/session/output/writer/buffer/interactive/viewport.rb +164 -0
- data/lib/test_bench/session/output/writer/buffer/interactive.rb +139 -0
- data/lib/test_bench/session/output/writer/buffer.rb +27 -0
- data/lib/test_bench/session/output/writer/defaults.rb +17 -0
- data/lib/test_bench/session/output/writer/substitute.rb +17 -0
- data/lib/test_bench/session/output/writer.rb +95 -0
- data/lib/test_bench/session/output.rb +375 -0
- data/lib/test_bench/session/projection.rb +28 -0
- data/lib/test_bench/session/session.rb +51 -65
- data/lib/test_bench/session/store.rb +59 -0
- data/lib/test_bench/session/substitute/path.rb +63 -0
- data/lib/test_bench/session/substitute/sink.rb +104 -0
- data/lib/test_bench/session/substitute.rb +17 -34
- data/lib/test_bench/session.rb +16 -5
- metadata +22 -17
- data/lib/test_bench/session/controls/capture_sink/record.rb +0 -19
- data/lib/test_bench/session/controls/events/aborted.rb +0 -29
- data/lib/test_bench/session/controls/events/file_finished.rb +0 -32
- data/lib/test_bench/session/controls/events/file_started.rb +0 -29
- data/lib/test_bench/session/controls/events/finished.rb +0 -32
- data/lib/test_bench/session/controls/events/started.rb +0 -29
- data/lib/test_bench/session/controls/file.rb +0 -58
- data/lib/test_bench/session/telemetry/capture_sink/path.rb +0 -65
- data/lib/test_bench/session/telemetry/capture_sink/record.rb +0 -39
- data/lib/test_bench/session/telemetry/capture_sink.rb +0 -63
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eff1f946f4af72a45cf8a20f51c0500ea4633ac22ac17da89ee1da243d7ce9b7
|
4
|
+
data.tar.gz: bd1faca42a45e762480171d1bce77c2a58cacb32007d04cc1bebf8c64a66412d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f732ea82d07763d25a48eaf05e8e5287b785a61a357955cdd09108ac5101c7adf34379c6121f40b423deaa8caf1cb798392084d01da2e3b3d10b1ae6b5d55832
|
7
|
+
data.tar.gz: d0e36f45c29d0d38c7844d24e5f06428f7254521944e1c1c5787fc91bb243b6a73d0366960a63241cd48c2afd9f02703ddbf8891193b038f11d097c9eab37889
|
@@ -3,12 +3,101 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Comment
|
5
5
|
module Text
|
6
|
-
def self.example
|
7
|
-
|
6
|
+
def self.example
|
7
|
+
"Some comment"
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.random
|
11
|
+
Random.example
|
12
|
+
end
|
13
|
+
|
14
|
+
module Random
|
15
|
+
def self.example(suffix=nil, text: nil)
|
16
|
+
suffix ||= self.suffix
|
17
|
+
text ||= Text.example
|
18
|
+
|
19
|
+
"#{text} #{suffix}"
|
20
|
+
end
|
21
|
+
|
22
|
+
def self.suffix
|
23
|
+
Controls::Random.string
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
module MultipleLines
|
28
|
+
def self.example(lines=nil)
|
29
|
+
lines ||= self.lines
|
30
|
+
|
31
|
+
text = String.new
|
32
|
+
|
33
|
+
lines.map do |line|
|
34
|
+
text << line
|
35
|
+
text << "\n"
|
36
|
+
end
|
37
|
+
|
38
|
+
text
|
39
|
+
end
|
40
|
+
|
41
|
+
def self.random
|
42
|
+
Random.example
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.lines
|
46
|
+
[
|
47
|
+
"Some comment",
|
48
|
+
"Some other comment",
|
49
|
+
"Yet another comment"
|
50
|
+
]
|
51
|
+
end
|
52
|
+
|
53
|
+
module Random
|
54
|
+
def self.example(suffix=nil)
|
55
|
+
suffix ||= Text::Random.suffix
|
56
|
+
|
57
|
+
lines = MultipleLines.lines.map do |line|
|
58
|
+
Text::Random.example(suffix, text: line)
|
59
|
+
end
|
60
|
+
|
61
|
+
MultipleLines.example(lines)
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
module Heading
|
68
|
+
def self.example(text: nil)
|
69
|
+
text ||= self.text
|
70
|
+
|
71
|
+
"#{text}:"
|
72
|
+
end
|
73
|
+
|
74
|
+
def self.random
|
75
|
+
Random.example
|
76
|
+
end
|
77
|
+
|
78
|
+
def self.text
|
79
|
+
"Some Comment Heading"
|
80
|
+
end
|
81
|
+
|
82
|
+
module Random
|
83
|
+
def self.example(suffix=nil)
|
84
|
+
suffix ||= Controls::Random.string
|
85
|
+
|
86
|
+
text = "#{Heading.text} #{suffix}"
|
87
|
+
|
88
|
+
Heading.example(text:)
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
module Quote
|
94
|
+
def self.example
|
95
|
+
true
|
96
|
+
end
|
8
97
|
|
9
|
-
|
98
|
+
def self.random
|
99
|
+
Random.boolean
|
10
100
|
end
|
11
|
-
def self.random = example(Random.string)
|
12
101
|
end
|
13
102
|
end
|
14
103
|
end
|
@@ -3,12 +3,87 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Detail
|
5
5
|
module Text
|
6
|
-
def self.example
|
7
|
-
|
6
|
+
def self.example
|
7
|
+
"Some detail"
|
8
|
+
end
|
9
|
+
|
10
|
+
def self.random
|
11
|
+
Random.example
|
12
|
+
end
|
13
|
+
|
14
|
+
module Random
|
15
|
+
def self.example(suffix=nil, text: nil)
|
16
|
+
text ||= Text.example
|
17
|
+
|
18
|
+
Comment::Text::Random.example(suffix, text:)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
module MultipleLines
|
23
|
+
def self.example(lines=nil)
|
24
|
+
lines ||= self.lines
|
25
|
+
|
26
|
+
Comment::Text::MultipleLines.example(lines)
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.random
|
30
|
+
Random.example
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.lines
|
34
|
+
[
|
35
|
+
"Some detail",
|
36
|
+
"Some other detail",
|
37
|
+
"Yet another detail"
|
38
|
+
]
|
39
|
+
end
|
40
|
+
|
41
|
+
module Random
|
42
|
+
def self.example(suffix=nil)
|
43
|
+
suffix ||= Comment::Text::Random.suffix
|
44
|
+
|
45
|
+
lines = MultipleLines.lines.map do |line|
|
46
|
+
Text::Random.example(suffix, text: line)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
module Heading
|
54
|
+
def self.example(text: nil)
|
55
|
+
text ||= self.text
|
56
|
+
|
57
|
+
"#{text}:"
|
58
|
+
end
|
59
|
+
|
60
|
+
def self.random
|
61
|
+
Random.example
|
62
|
+
end
|
63
|
+
|
64
|
+
def self.text
|
65
|
+
"Some Detail Heading"
|
66
|
+
end
|
67
|
+
|
68
|
+
module Random
|
69
|
+
def self.example(suffix=nil)
|
70
|
+
suffix ||= Controls::Random.string
|
71
|
+
|
72
|
+
text = "#{Heading.text} #{suffix}"
|
73
|
+
|
74
|
+
Heading.example(text:)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
module Quote
|
80
|
+
def self.example
|
81
|
+
true
|
82
|
+
end
|
8
83
|
|
9
|
-
|
84
|
+
def self.random
|
85
|
+
Random.boolean
|
10
86
|
end
|
11
|
-
def self.random = example(Random.string)
|
12
87
|
end
|
13
88
|
end
|
14
89
|
end
|
@@ -3,25 +3,106 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Events
|
5
5
|
module Commented
|
6
|
-
|
7
|
-
|
6
|
+
extend EventData
|
7
|
+
|
8
|
+
def self.example(text: nil, quote: nil, heading: nil, process_id: nil, time: nil)
|
9
|
+
quote = self.quote if quote.nil?
|
8
10
|
process_id ||= self.process_id
|
9
11
|
time ||= self.time
|
10
12
|
|
11
|
-
|
13
|
+
if text == :none
|
14
|
+
text = nil
|
15
|
+
else
|
16
|
+
text ||= self.text
|
17
|
+
end
|
18
|
+
|
19
|
+
Session::Events::Commented.build(text, quote, heading, process_id:, time:)
|
12
20
|
end
|
13
21
|
|
14
22
|
def self.random
|
15
|
-
|
16
|
-
|
17
|
-
|
23
|
+
Random.example
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.text
|
27
|
+
Comment::Text.example
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.quote
|
31
|
+
false
|
32
|
+
end
|
18
33
|
|
19
|
-
|
34
|
+
def self.process_id
|
35
|
+
ProcessID.example
|
20
36
|
end
|
21
37
|
|
22
|
-
def self.
|
23
|
-
|
24
|
-
|
38
|
+
def self.time
|
39
|
+
Time.example
|
40
|
+
end
|
41
|
+
|
42
|
+
module Random
|
43
|
+
extend EventData
|
44
|
+
|
45
|
+
def self.example(text: nil, quote: nil, heading: nil, process_id: nil, time: nil)
|
46
|
+
text ||= Comment::Text.random
|
47
|
+
quote ||= Comment::Quote.random
|
48
|
+
process_id ||= ProcessID.random
|
49
|
+
time ||= Time.random
|
50
|
+
|
51
|
+
Commented.example(text:, quote:, heading:, process_id:, time:)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
module MultipleLines
|
56
|
+
extend EventData
|
57
|
+
|
58
|
+
def self.example(omit_heading: nil, heading: nil, **attributes)
|
59
|
+
if omit_heading.nil?
|
60
|
+
omit_heading = !heading.nil?
|
61
|
+
end
|
62
|
+
|
63
|
+
if not omit_heading
|
64
|
+
heading ||= self.heading
|
65
|
+
end
|
66
|
+
|
67
|
+
Commented.example(text:, quote:, heading:, **attributes)
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.random
|
71
|
+
Random.example
|
72
|
+
end
|
73
|
+
|
74
|
+
def self.text
|
75
|
+
Comment::Text::MultipleLines.example
|
76
|
+
end
|
77
|
+
|
78
|
+
def self.quote
|
79
|
+
true
|
80
|
+
end
|
81
|
+
|
82
|
+
def self.heading
|
83
|
+
Comment::Heading.example
|
84
|
+
end
|
85
|
+
|
86
|
+
module Random
|
87
|
+
extend EventData
|
88
|
+
|
89
|
+
def self.example(omit_heading: nil, heading: nil, **attributes)
|
90
|
+
if omit_heading.nil?
|
91
|
+
omit_heading = !heading.nil?
|
92
|
+
end
|
93
|
+
|
94
|
+
suffix = Controls::Random.string
|
95
|
+
|
96
|
+
if not omit_heading
|
97
|
+
heading = Comment::Heading::Random.example(suffix)
|
98
|
+
end
|
99
|
+
|
100
|
+
text = Comment::Text::MultipleLines::Random.example(suffix)
|
101
|
+
|
102
|
+
Commented::Random.example(text:, heading:, **attributes)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
25
106
|
end
|
26
107
|
end
|
27
108
|
end
|
@@ -3,28 +3,66 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Events
|
5
5
|
module ContextFinished
|
6
|
+
extend EventData
|
7
|
+
|
6
8
|
def self.example(title: nil, result: nil, process_id: nil, time: nil)
|
7
|
-
title ||= self.title
|
8
9
|
result = self.result if result.nil?
|
9
10
|
process_id ||= self.process_id
|
10
11
|
time ||= self.time
|
11
12
|
|
12
|
-
|
13
|
+
if title == :none
|
14
|
+
title = nil
|
15
|
+
else
|
16
|
+
title ||= self.title
|
17
|
+
end
|
18
|
+
|
19
|
+
Session::Events::ContextFinished.build(title, result, process_id:, time:)
|
13
20
|
end
|
14
21
|
|
15
22
|
def self.random
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
23
|
+
Random.example
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.title
|
27
|
+
Title::Context.example
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.result
|
31
|
+
Result.example
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.process_id
|
35
|
+
ProcessID.example
|
36
|
+
end
|
37
|
+
|
38
|
+
def self.time
|
39
|
+
Time.example
|
40
|
+
end
|
41
|
+
|
42
|
+
module Random
|
43
|
+
extend EventData
|
20
44
|
|
21
|
-
example(title
|
45
|
+
def self.example(title: nil, result: nil, process_id: nil, time: nil)
|
46
|
+
result ||= Result.random
|
47
|
+
process_id ||= ProcessID.random
|
48
|
+
time ||= Time.random
|
49
|
+
title ||= Title::Context.random
|
50
|
+
|
51
|
+
ContextFinished.example(title:, result:, process_id:, time:)
|
52
|
+
end
|
22
53
|
end
|
23
54
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
55
|
+
module NoTitle
|
56
|
+
extend EventData
|
57
|
+
|
58
|
+
def self.example(**arguments)
|
59
|
+
ContextFinished.example(title: :none, **arguments)
|
60
|
+
end
|
61
|
+
|
62
|
+
def self.random
|
63
|
+
Random.example(title: :none)
|
64
|
+
end
|
65
|
+
end
|
28
66
|
end
|
29
67
|
end
|
30
68
|
end
|
@@ -3,25 +3,43 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Events
|
5
5
|
module ContextSkipped
|
6
|
+
extend EventData
|
7
|
+
|
6
8
|
def self.example(title: nil, process_id: nil, time: nil)
|
7
9
|
title ||= self.title
|
8
10
|
process_id ||= self.process_id
|
9
11
|
time ||= self.time
|
10
12
|
|
11
|
-
Session::Events::ContextSkipped.
|
13
|
+
Session::Events::ContextSkipped.build(title, process_id:, time:)
|
12
14
|
end
|
13
15
|
|
14
16
|
def self.random
|
15
|
-
|
16
|
-
|
17
|
-
time = Time.random
|
17
|
+
Random.example
|
18
|
+
end
|
18
19
|
|
19
|
-
|
20
|
+
def self.title
|
21
|
+
Title::Context.example
|
20
22
|
end
|
21
23
|
|
22
|
-
def self.
|
23
|
-
|
24
|
-
|
24
|
+
def self.process_id
|
25
|
+
ProcessID.example
|
26
|
+
end
|
27
|
+
|
28
|
+
def self.time
|
29
|
+
Time.example
|
30
|
+
end
|
31
|
+
|
32
|
+
module Random
|
33
|
+
extend EventData
|
34
|
+
|
35
|
+
def self.example(title: nil, process_id: nil, time: nil)
|
36
|
+
process_id ||= ProcessID.random
|
37
|
+
time ||= Time.random
|
38
|
+
title ||= Title::Context.random
|
39
|
+
|
40
|
+
ContextSkipped.example(title:, process_id:, time:)
|
41
|
+
end
|
42
|
+
end
|
25
43
|
end
|
26
44
|
end
|
27
45
|
end
|
@@ -3,25 +3,60 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Events
|
5
5
|
module ContextStarted
|
6
|
+
extend EventData
|
7
|
+
|
6
8
|
def self.example(title: nil, process_id: nil, time: nil)
|
7
|
-
title ||= self.title
|
8
9
|
process_id ||= self.process_id
|
9
10
|
time ||= self.time
|
10
11
|
|
11
|
-
|
12
|
+
if title == :none
|
13
|
+
title = nil
|
14
|
+
else
|
15
|
+
title ||= self.title
|
16
|
+
end
|
17
|
+
|
18
|
+
Session::Events::ContextStarted.build(title, process_id:, time:)
|
12
19
|
end
|
13
20
|
|
14
21
|
def self.random
|
15
|
-
|
16
|
-
|
17
|
-
|
22
|
+
Random.example
|
23
|
+
end
|
24
|
+
|
25
|
+
def self.title
|
26
|
+
Title::Context.example
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.process_id
|
30
|
+
ProcessID.example
|
31
|
+
end
|
18
32
|
|
19
|
-
|
33
|
+
def self.time
|
34
|
+
Time.example
|
20
35
|
end
|
21
36
|
|
22
|
-
|
23
|
-
|
24
|
-
|
37
|
+
module Random
|
38
|
+
extend EventData
|
39
|
+
|
40
|
+
def self.example(title: nil, process_id: nil, time: nil)
|
41
|
+
process_id ||= ProcessID.random
|
42
|
+
time ||= Time.random
|
43
|
+
title ||= Title::Context.random
|
44
|
+
|
45
|
+
ContextStarted.example(title:, process_id:, time:)
|
46
|
+
end
|
47
|
+
end
|
48
|
+
|
49
|
+
module NoTitle
|
50
|
+
extend EventData
|
51
|
+
|
52
|
+
def self.example(**arguments)
|
53
|
+
ContextStarted.example(title: :none, **arguments)
|
54
|
+
end
|
55
|
+
|
56
|
+
def self.random
|
57
|
+
Random.example(title: :none)
|
58
|
+
end
|
59
|
+
end
|
25
60
|
end
|
26
61
|
end
|
27
62
|
end
|
@@ -3,25 +3,106 @@ module TestBench
|
|
3
3
|
module Controls
|
4
4
|
module Events
|
5
5
|
module Detailed
|
6
|
-
|
7
|
-
|
6
|
+
extend EventData
|
7
|
+
|
8
|
+
def self.example(text: nil, quote: nil, heading: nil, process_id: nil, time: nil)
|
9
|
+
quote = self.quote if quote.nil?
|
8
10
|
process_id ||= self.process_id
|
9
11
|
time ||= self.time
|
10
12
|
|
11
|
-
|
13
|
+
if text == :none
|
14
|
+
text = nil
|
15
|
+
else
|
16
|
+
text ||= self.text
|
17
|
+
end
|
18
|
+
|
19
|
+
Session::Events::Detailed.build(text, quote, heading, process_id:, time:)
|
12
20
|
end
|
13
21
|
|
14
22
|
def self.random
|
15
|
-
|
16
|
-
|
17
|
-
|
23
|
+
Random.example
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.text
|
27
|
+
Detail::Text.example
|
28
|
+
end
|
29
|
+
|
30
|
+
def self.quote
|
31
|
+
false
|
32
|
+
end
|
18
33
|
|
19
|
-
|
34
|
+
def self.process_id
|
35
|
+
ProcessID.example
|
20
36
|
end
|
21
37
|
|
22
|
-
def self.
|
23
|
-
|
24
|
-
|
38
|
+
def self.time
|
39
|
+
Time.example
|
40
|
+
end
|
41
|
+
|
42
|
+
module Random
|
43
|
+
extend EventData
|
44
|
+
|
45
|
+
def self.example(text: nil, quote: nil, heading: nil, process_id: nil, time: nil)
|
46
|
+
text ||= Detail::Text.random
|
47
|
+
quote ||= Detail::Quote.random
|
48
|
+
process_id ||= ProcessID.random
|
49
|
+
time ||= Time.random
|
50
|
+
|
51
|
+
Detailed.example(text:, quote:, heading:, process_id:, time:)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
module MultipleLines
|
56
|
+
extend EventData
|
57
|
+
|
58
|
+
def self.example(omit_heading: nil, heading: nil, **attributes)
|
59
|
+
if omit_heading.nil?
|
60
|
+
omit_heading = !heading.nil?
|
61
|
+
end
|
62
|
+
|
63
|
+
if not omit_heading
|
64
|
+
heading ||= self.heading
|
65
|
+
end
|
66
|
+
|
67
|
+
Detailed.example(text:, quote:, heading:, **attributes)
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.random
|
71
|
+
Random.example
|
72
|
+
end
|
73
|
+
|
74
|
+
def self.text
|
75
|
+
Detail::Text::MultipleLines.example
|
76
|
+
end
|
77
|
+
|
78
|
+
def self.quote
|
79
|
+
true
|
80
|
+
end
|
81
|
+
|
82
|
+
def self.heading
|
83
|
+
Detail::Heading.example
|
84
|
+
end
|
85
|
+
|
86
|
+
module Random
|
87
|
+
extend EventData
|
88
|
+
|
89
|
+
def self.example(omit_heading: nil, heading: nil, **attributes)
|
90
|
+
if omit_heading.nil?
|
91
|
+
omit_heading = !heading.nil?
|
92
|
+
end
|
93
|
+
|
94
|
+
suffix = Controls::Random.string
|
95
|
+
|
96
|
+
if not omit_heading
|
97
|
+
heading = Detail::Heading::Random.example(suffix)
|
98
|
+
end
|
99
|
+
|
100
|
+
text = Detail::Text::MultipleLines::Random.example(suffix)
|
101
|
+
|
102
|
+
Detailed::Random.example(text:, heading:, **attributes)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
25
106
|
end
|
26
107
|
end
|
27
108
|
end
|