ace-test-runner 0.18.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 +7 -0
- data/.ace-defaults/test/runner.yml +35 -0
- data/.ace-defaults/test/suite.yml +31 -0
- data/.ace-defaults/test-runner/config.yml +61 -0
- data/CHANGELOG.md +626 -0
- data/LICENSE +21 -0
- data/README.md +42 -0
- data/Rakefile +14 -0
- data/exe/ace-test +26 -0
- data/exe/ace-test-suite +149 -0
- data/lib/ace/test_runner/atoms/command_builder.rb +165 -0
- data/lib/ace/test_runner/atoms/lazy_loader.rb +62 -0
- data/lib/ace/test_runner/atoms/line_number_resolver.rb +86 -0
- data/lib/ace/test_runner/atoms/report_directory_resolver.rb +48 -0
- data/lib/ace/test_runner/atoms/report_path_resolver.rb +67 -0
- data/lib/ace/test_runner/atoms/result_parser.rb +254 -0
- data/lib/ace/test_runner/atoms/test_detector.rb +114 -0
- data/lib/ace/test_runner/atoms/test_folder_detector.rb +53 -0
- data/lib/ace/test_runner/atoms/test_type_detector.rb +83 -0
- data/lib/ace/test_runner/atoms/timestamp_generator.rb +103 -0
- data/lib/ace/test_runner/cli/commands/test.rb +326 -0
- data/lib/ace/test_runner/cli.rb +16 -0
- data/lib/ace/test_runner/formatters/base_formatter.rb +102 -0
- data/lib/ace/test_runner/formatters/json_formatter.rb +90 -0
- data/lib/ace/test_runner/formatters/markdown_formatter.rb +91 -0
- data/lib/ace/test_runner/formatters/progress_file_formatter.rb +164 -0
- data/lib/ace/test_runner/formatters/progress_formatter.rb +328 -0
- data/lib/ace/test_runner/models/test_configuration.rb +165 -0
- data/lib/ace/test_runner/models/test_failure.rb +95 -0
- data/lib/ace/test_runner/models/test_group.rb +105 -0
- data/lib/ace/test_runner/models/test_report.rb +145 -0
- data/lib/ace/test_runner/models/test_result.rb +86 -0
- data/lib/ace/test_runner/molecules/cli_argument_parser.rb +263 -0
- data/lib/ace/test_runner/molecules/config_loader.rb +162 -0
- data/lib/ace/test_runner/molecules/deprecation_fixer.rb +204 -0
- data/lib/ace/test_runner/molecules/failed_package_reporter.rb +100 -0
- data/lib/ace/test_runner/molecules/failure_analyzer.rb +249 -0
- data/lib/ace/test_runner/molecules/in_process_runner.rb +249 -0
- data/lib/ace/test_runner/molecules/package_resolver.rb +106 -0
- data/lib/ace/test_runner/molecules/pattern_resolver.rb +146 -0
- data/lib/ace/test_runner/molecules/rake_integration.rb +218 -0
- data/lib/ace/test_runner/molecules/report_storage.rb +303 -0
- data/lib/ace/test_runner/molecules/smart_test_executor.rb +107 -0
- data/lib/ace/test_runner/molecules/test_executor.rb +162 -0
- data/lib/ace/test_runner/organisms/agent_reporter.rb +384 -0
- data/lib/ace/test_runner/organisms/report_generator.rb +151 -0
- data/lib/ace/test_runner/organisms/sequential_group_executor.rb +185 -0
- data/lib/ace/test_runner/organisms/test_orchestrator.rb +648 -0
- data/lib/ace/test_runner/rake_task.rb +90 -0
- data/lib/ace/test_runner/suite/display_helpers.rb +117 -0
- data/lib/ace/test_runner/suite/display_manager.rb +204 -0
- data/lib/ace/test_runner/suite/duration_estimator.rb +50 -0
- data/lib/ace/test_runner/suite/orchestrator.rb +120 -0
- data/lib/ace/test_runner/suite/process_monitor.rb +268 -0
- data/lib/ace/test_runner/suite/result_aggregator.rb +176 -0
- data/lib/ace/test_runner/suite/simple_display_manager.rb +122 -0
- data/lib/ace/test_runner/suite.rb +22 -0
- data/lib/ace/test_runner/version.rb +7 -0
- data/lib/ace/test_runner.rb +69 -0
- metadata +246 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 467d1a03ce2855ec8a99d826276a02657f205e9f0fdacdcf82b2820ec025c314
|
|
4
|
+
data.tar.gz: 8c04f421691546206b9ff8c40c42090c9c02a123d79e01caaebcaacaa989834b
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: f65d85cd9b93d92c12f9157332f9d6ebc3b37494ca460c35c88a8e3c2fbdfdbd8cf44f9956724517526b24bcb268b6941e455c874ee73a3b39488de322eca9da
|
|
7
|
+
data.tar.gz: 129289d67cfa53a6ab7264112b4c6ed2f371e01b6f03e4d4bdc628ad13f3c1c4118dd6ba4c718389aca4eddab7252192d6317d1640c0afc4c787d0ab5858502b
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# ace-test-runner configuration
|
|
2
|
+
# Copy to .ace/test/runner.yml if you need to override defaults
|
|
3
|
+
|
|
4
|
+
test:
|
|
5
|
+
# Output format: progress, progress-file, or json
|
|
6
|
+
format: progress
|
|
7
|
+
|
|
8
|
+
# Test reports directory
|
|
9
|
+
report_dir: .ace-local/test/reports
|
|
10
|
+
save_reports: true
|
|
11
|
+
|
|
12
|
+
# Test execution options
|
|
13
|
+
fail_fast: false
|
|
14
|
+
verbose: false
|
|
15
|
+
parallel: false
|
|
16
|
+
color: true
|
|
17
|
+
|
|
18
|
+
# Timeout in seconds (nil = no timeout)
|
|
19
|
+
timeout: null
|
|
20
|
+
|
|
21
|
+
# Test file patterns (optional - has good defaults)
|
|
22
|
+
# patterns:
|
|
23
|
+
# smoke: "test/*_test.rb" # Root-level smoke tests
|
|
24
|
+
# atoms: "test/atoms/**/*_test.rb"
|
|
25
|
+
# molecules: "test/molecules/**/*_test.rb"
|
|
26
|
+
# organisms: "test/organisms/**/*_test.rb"
|
|
27
|
+
# models: "test/models/**/*_test.rb"
|
|
28
|
+
# integration: "test/integration/**/*_test.rb"
|
|
29
|
+
# system: "test/system/**/*_test.rb"
|
|
30
|
+
#
|
|
31
|
+
# Test groups (optional - has good defaults)
|
|
32
|
+
# groups:
|
|
33
|
+
# unit: [smoke, atoms, molecules, organisms, models]
|
|
34
|
+
# all: [unit, integration, system]
|
|
35
|
+
# quick: [atoms, molecules]
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Example test suite configuration
|
|
2
|
+
# Copy to .ace/test/suite.yml in your project and customize
|
|
3
|
+
|
|
4
|
+
test_suite:
|
|
5
|
+
# Maximum parallel test processes
|
|
6
|
+
max_parallel: 10
|
|
7
|
+
|
|
8
|
+
# Packages to test (for monorepos or multi-package projects)
|
|
9
|
+
packages:
|
|
10
|
+
- name: your-package
|
|
11
|
+
path: . # Path relative to project root
|
|
12
|
+
group: main # Group for selective testing
|
|
13
|
+
priority: 1 # Lower number = higher priority
|
|
14
|
+
|
|
15
|
+
# Add more packages as needed:
|
|
16
|
+
# - name: another-package
|
|
17
|
+
# path: packages/another
|
|
18
|
+
# group: utilities
|
|
19
|
+
# priority: 2
|
|
20
|
+
|
|
21
|
+
# Test execution options
|
|
22
|
+
test_options:
|
|
23
|
+
format: compact # Output format: compact, verbose, json
|
|
24
|
+
save_reports: true # Save test reports to .ace-local/test/reports/
|
|
25
|
+
report_dir: .ace-local/test/reports
|
|
26
|
+
fail_fast: false # Stop on first failure
|
|
27
|
+
|
|
28
|
+
# Display settings (optional)
|
|
29
|
+
display:
|
|
30
|
+
show_progress: true
|
|
31
|
+
color: true
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# ace-test-runner default configuration
|
|
2
|
+
# ADR-022: This file is the single source of truth for defaults
|
|
3
|
+
#
|
|
4
|
+
# Configuration cascade:
|
|
5
|
+
# 1. .ace-defaults/test-runner/config.yml (gem defaults - this file)
|
|
6
|
+
# 2. ~/.ace/test/runner.yml (user defaults)
|
|
7
|
+
# 3. .ace/test/runner.yml (project overrides)
|
|
8
|
+
# 4. CLI options (highest priority)
|
|
9
|
+
|
|
10
|
+
version: 1
|
|
11
|
+
|
|
12
|
+
# Test file patterns for each category
|
|
13
|
+
# Supports both test/unit/atoms and test/atoms directory structures
|
|
14
|
+
patterns:
|
|
15
|
+
smoke: "test/{unit/,}smoke/**/*_test.rb"
|
|
16
|
+
atoms: "test/{unit/,}atoms/**/*_test.rb"
|
|
17
|
+
molecules: "test/{unit/,}molecules/**/*_test.rb"
|
|
18
|
+
organisms: "test/{unit/,}organisms/**/*_test.rb"
|
|
19
|
+
models: "test/{unit/,}models/**/*_test.rb"
|
|
20
|
+
commands: "test/{unit/,}commands/**/*_test.rb"
|
|
21
|
+
cli: "test/{unit/,}cli/**/*_test.rb"
|
|
22
|
+
prompts: "test/{unit/,}prompts/**/*_test.rb"
|
|
23
|
+
fixtures: "test/{unit/,}fixtures/**/*_test.rb"
|
|
24
|
+
support: "test/{unit/,}support/**/*_test.rb"
|
|
25
|
+
edge: "test/{unit/,}edge/**/*_test.rb"
|
|
26
|
+
integration: "test/integration/**/*_test.rb"
|
|
27
|
+
system: "test/system/**/*_test.rb"
|
|
28
|
+
|
|
29
|
+
# Test groups that combine multiple patterns
|
|
30
|
+
groups:
|
|
31
|
+
unit:
|
|
32
|
+
- smoke
|
|
33
|
+
- atoms
|
|
34
|
+
- molecules
|
|
35
|
+
- organisms
|
|
36
|
+
- models
|
|
37
|
+
- commands
|
|
38
|
+
- cli
|
|
39
|
+
- prompts
|
|
40
|
+
- fixtures
|
|
41
|
+
- support
|
|
42
|
+
- edge
|
|
43
|
+
all:
|
|
44
|
+
- unit
|
|
45
|
+
- integration
|
|
46
|
+
- system
|
|
47
|
+
quick:
|
|
48
|
+
- atoms
|
|
49
|
+
- molecules
|
|
50
|
+
|
|
51
|
+
# Default execution options
|
|
52
|
+
defaults:
|
|
53
|
+
reporter: progress
|
|
54
|
+
color: auto
|
|
55
|
+
fail_fast: false
|
|
56
|
+
save_reports: true
|
|
57
|
+
report_dir: .ace-local/test/reports
|
|
58
|
+
|
|
59
|
+
# Failure display limits
|
|
60
|
+
failure_limits:
|
|
61
|
+
max_display: 7
|