You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* chore: add e2e tests for cli, multi-workspace and auto-gen
Assisted-By: Cursor
Signed-off-by: Frank Kong <frkong@redhat.com>
* chore: add backstage plugin e2e test and refactor e2e tests
Assisted-By: Cursor
Signed-off-by: Frank Kong <frkong@redhat.com>
* chore: merge tests and run e2e tests in parallel
Signed-off-by: Frank Kong <frkong@redhat.com>
* chore: bump timeout
Signed-off-by: Frank Kong <frkong@redhat.com>
* chore: fixed ruff and mypy issues
Assisted-By: Claude Code
Signed-off-by: Frank Kong <frkong@redhat.com>
---------
Signed-off-by: Frank Kong <frkong@redhat.com>
- **Goal**: Validate that the container image works correctly with the provided `examples/`.
51
51
- **Workflow**:
52
52
1. **Get Image**: Use a pre-built image from the registry (CI) or build locally (development).
53
-
2. **Run**: Execute the container mounting a `tmp_path` copy of an `examples/` directory.
54
-
3. **Verify**: Check the output directory (mounted volume) for expected artifacts (e.g., `.tgz` files, `plugins-list.yaml`).
53
+
2. **Run**: Execute the container mounting config fixtures and a temp output directory.
54
+
3. **Verify**: Check the output directory for expected artifacts (`.tgz`, `.tgz.integrity`, `plugins-list.yaml`).
55
+
56
+
### Architecture
57
+
58
+
All E2E infrastructure lives in `tests/e2e/conftest.py`:
59
+
60
+
- **`ContainerResult`** dataclass: holds `returncode`, `output`, `output_dir`, and `log_file`.
61
+
- **`run_factory_container`** (session fixture): returns a callable `_run(config_dir, extra_args, timeout)` that runs the container image, captures output, persists logs, and returns a `ContainerResult`.
62
+
- **`PluginBuildTests`** base class: provides 6 standard test methods inherited by all single-workspace test classes. Expects two fixtures: `container_result` and `expected_plugins`.
0 commit comments