sus-fixtures-console 0.3.0 → 0.4.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
- checksums.yaml.gz.sig +0 -0
- data/lib/sus/fixtures/console/captured_logger.rb +14 -4
- data/lib/sus/fixtures/console/null_logger.rb +8 -4
- data/lib/sus/fixtures/console/version.rb +1 -1
- data/lib/sus/fixtures/console.rb +13 -2
- data/readme.md +29 -3
- data/releases.md +23 -0
- data.tar.gz.sig +0 -0
- metadata +8 -12
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 866c9717a17e7c6a2bb6a9e5c0100c5f2f3873987c1c61aaab238c3753790e0e
|
4
|
+
data.tar.gz: 3ec4c6a398935168f9666b192661e9223069ba501d02cd65514e9d80773fba83
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3907c7561299fad43950dcfbb1cbd53cb6add6648f3ca79d92b33079e011d2c3a4c917beb4da698fa7c1bb95bdb3f1c14c539abd76f185056be4cd89eb6e1e52
|
7
|
+
data.tar.gz: a02d2e1fdd9c1735429afee13b7be05d4014cd37c01354024db87c2f1ec2698d90f1d6f70df61b9fd89794b95daa9f6d20e98dedabd7df7e0f0594dcd48100bf
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
@@ -3,18 +3,23 @@
|
|
3
3
|
# Released under the MIT License.
|
4
4
|
# Copyright, 2024, by Samuel Williams.
|
5
5
|
|
6
|
-
require
|
7
|
-
require
|
8
|
-
require
|
9
|
-
require
|
6
|
+
require "sus/shared"
|
7
|
+
require "console"
|
8
|
+
require "console/capture"
|
9
|
+
require "console/logger"
|
10
10
|
|
11
11
|
module Sus
|
12
12
|
module Fixtures
|
13
13
|
module Console
|
14
|
+
# Shared context for capturing console output during tests.
|
15
|
+
# Provides access to captured log messages and helper methods for testing console logging.
|
14
16
|
CapturedLogger = Sus::Shared("captured logger") do
|
17
|
+
# @attribute [Console::Capture] Captures console output for inspection.
|
15
18
|
let(:console_capture) {::Console::Capture.new}
|
19
|
+
# @attribute [Console::Logger] Logger configured to capture output at DEBUG level.
|
16
20
|
let(:console_logger) {::Console::Logger.new(console_capture, level: ::Console::Logger::DEBUG)}
|
17
21
|
|
22
|
+
# Set up console logger before test execution and clean up afterwards.
|
18
23
|
def around
|
19
24
|
::Console.logger = console_logger
|
20
25
|
super
|
@@ -22,10 +27,15 @@ module Sus
|
|
22
27
|
::Console.logger = nil
|
23
28
|
end
|
24
29
|
|
30
|
+
# Create an expectation for the console capture.
|
31
|
+
# @returns [Object] An expectation object for the console capture.
|
25
32
|
def expect_console
|
26
33
|
expect(console_capture)
|
27
34
|
end
|
28
35
|
|
36
|
+
# Create a matcher for checking logged messages with specific fields.
|
37
|
+
# @parameter fields [Hash] Key-value pairs to match in logged messages.
|
38
|
+
# @returns [Object] A matcher that checks for logged messages containing the specified fields.
|
29
39
|
def have_logged(**fields)
|
30
40
|
have_value(have_keys(**fields))
|
31
41
|
end
|
@@ -3,17 +3,21 @@
|
|
3
3
|
# Released under the MIT License.
|
4
4
|
# Copyright, 2024, by Samuel Williams.
|
5
5
|
|
6
|
-
require
|
7
|
-
require
|
8
|
-
require
|
9
|
-
require
|
6
|
+
require "sus/shared"
|
7
|
+
require "console"
|
8
|
+
require "console/capture"
|
9
|
+
require "console/logger"
|
10
10
|
|
11
11
|
module Sus
|
12
12
|
module Fixtures
|
13
13
|
module Console
|
14
|
+
# Shared context for suppressing console output during tests.
|
15
|
+
# Redirects all console logging to a null output to prevent noise in test runs.
|
14
16
|
NullLogger = Sus::Shared("null logger") do
|
17
|
+
# @attribute [Console::Logger] Logger configured to suppress all output.
|
15
18
|
let(:console_logger) {::Console::Logger.new(::Console::Output::Null.new)}
|
16
19
|
|
20
|
+
# Set up null logger before test execution and clean up afterwards.
|
17
21
|
def around
|
18
22
|
::Console.logger = console_logger
|
19
23
|
super
|
data/lib/sus/fixtures/console.rb
CHANGED
@@ -3,5 +3,16 @@
|
|
3
3
|
# Released under the MIT License.
|
4
4
|
# Copyright, 2024, by Samuel Williams.
|
5
5
|
|
6
|
-
require_relative
|
7
|
-
require_relative
|
6
|
+
require_relative "console/version"
|
7
|
+
require_relative "console/captured_logger"
|
8
|
+
require_relative "console/null_logger"
|
9
|
+
|
10
|
+
# @namespace
|
11
|
+
module Sus
|
12
|
+
# @namespace
|
13
|
+
module Fixtures
|
14
|
+
# @namespace
|
15
|
+
module Console
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
data/readme.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
Provides a convenient fixture for capturing or ignoring [console](https://github.com/socketry/console) logging.
|
4
4
|
|
5
|
-
[](https://github.com/socketry/sus-fixtures-console/actions?workflow=Test)
|
6
6
|
|
7
7
|
## Installation
|
8
8
|
|
@@ -12,9 +12,35 @@ $ bundle add sus-fixtures-console
|
|
12
12
|
|
13
13
|
## Usage
|
14
14
|
|
15
|
-
Please see the [project documentation](https://
|
15
|
+
Please see the [project documentation](https://socketry.github.io/sus-fixtures-console/) for more details.
|
16
16
|
|
17
|
-
- [Getting Started](https://
|
17
|
+
- [Getting Started](https://socketry.github.io/sus-fixtures-console/guides/getting-started/index) - This guide explains how to use the `Sus::Fixtures::Console` gem to redirect console logging output during tests.
|
18
|
+
|
19
|
+
## Releases
|
20
|
+
|
21
|
+
Please see the [project releases](https://socketry.github.io/sus-fixtures-console/releases/index) for all releases.
|
22
|
+
|
23
|
+
### v0.4.0
|
24
|
+
|
25
|
+
- Add agent context.
|
26
|
+
|
27
|
+
### v0.3.1
|
28
|
+
|
29
|
+
- Modernize gem structure and dependencies.
|
30
|
+
|
31
|
+
### v0.3.0
|
32
|
+
|
33
|
+
- Add `expect_console` helper method for more fluent test assertions.
|
34
|
+
- Add `have_logged` predicate for checking logged messages with specific fields.
|
35
|
+
|
36
|
+
### v0.2.0
|
37
|
+
|
38
|
+
- Avoid using nested fiber to prevent potential issues with fiber-based concurrency.
|
39
|
+
|
40
|
+
### v0.1.0
|
41
|
+
|
42
|
+
- Add `Sus::Fixtures::Console::CapturedLogger` for capturing console output during tests.
|
43
|
+
- Add `Sus::Fixtures::Console::NullLogger` for suppressing console output during tests.
|
18
44
|
|
19
45
|
## Contributing
|
20
46
|
|
data/releases.md
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
# Releases
|
2
|
+
|
3
|
+
## v0.4.0
|
4
|
+
|
5
|
+
- Add agent context.
|
6
|
+
|
7
|
+
## v0.3.1
|
8
|
+
|
9
|
+
- Modernize gem structure and dependencies.
|
10
|
+
|
11
|
+
## v0.3.0
|
12
|
+
|
13
|
+
- Add `expect_console` helper method for more fluent test assertions.
|
14
|
+
- Add `have_logged` predicate for checking logged messages with specific fields.
|
15
|
+
|
16
|
+
## v0.2.0
|
17
|
+
|
18
|
+
- Avoid using nested fiber to prevent potential issues with fiber-based concurrency.
|
19
|
+
|
20
|
+
## v0.1.0
|
21
|
+
|
22
|
+
- Add `Sus::Fixtures::Console::CapturedLogger` for capturing console output during tests.
|
23
|
+
- Add `Sus::Fixtures::Console::NullLogger` for suppressing console output during tests.
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,11 +1,10 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sus-fixtures-console
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Samuel Williams
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain:
|
11
10
|
- |
|
@@ -37,7 +36,7 @@ cert_chain:
|
|
37
36
|
Q2K9NVun/S785AP05vKkXZEFYxqG6EW012U4oLcFl5MySFajYXRYbuUpH6AY+HP8
|
38
37
|
voD0MPg1DssDLKwXyt1eKD/+Fq0bFWhwVM/1XiAXL7lyYUyOq24KHgQ2Csg=
|
39
38
|
-----END CERTIFICATE-----
|
40
|
-
date:
|
39
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
41
40
|
dependencies:
|
42
41
|
- !ruby/object:Gem::Dependency
|
43
42
|
name: console
|
@@ -67,8 +66,6 @@ dependencies:
|
|
67
66
|
- - "~>"
|
68
67
|
- !ruby/object:Gem::Version
|
69
68
|
version: '0.10'
|
70
|
-
description:
|
71
|
-
email:
|
72
69
|
executables: []
|
73
70
|
extensions: []
|
74
71
|
extra_rdoc_files: []
|
@@ -79,14 +76,14 @@ files:
|
|
79
76
|
- lib/sus/fixtures/console/version.rb
|
80
77
|
- license.md
|
81
78
|
- readme.md
|
82
|
-
|
79
|
+
- releases.md
|
80
|
+
homepage: https://github.com/socketry/sus-fixtures-console
|
83
81
|
licenses:
|
84
82
|
- MIT
|
85
83
|
metadata:
|
86
|
-
documentation_uri: https://
|
84
|
+
documentation_uri: https://socketry.github.io/sus-fixtures-console/
|
87
85
|
funding_uri: https://github.com/sponsors/ioquatix/
|
88
|
-
source_code_uri: https://github.com/
|
89
|
-
post_install_message:
|
86
|
+
source_code_uri: https://github.com/socketry/sus-fixtures-console.git
|
90
87
|
rdoc_options: []
|
91
88
|
require_paths:
|
92
89
|
- lib
|
@@ -94,15 +91,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
94
91
|
requirements:
|
95
92
|
- - ">="
|
96
93
|
- !ruby/object:Gem::Version
|
97
|
-
version: '3.
|
94
|
+
version: '3.2'
|
98
95
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
99
96
|
requirements:
|
100
97
|
- - ">="
|
101
98
|
- !ruby/object:Gem::Version
|
102
99
|
version: '0'
|
103
100
|
requirements: []
|
104
|
-
rubygems_version: 3.
|
105
|
-
signing_key:
|
101
|
+
rubygems_version: 3.6.9
|
106
102
|
specification_version: 4
|
107
103
|
summary: Test fixtures for capturing Console output.
|
108
104
|
test_files: []
|
metadata.gz.sig
CHANGED
Binary file
|