mirror of
https://github.com/logos-messaging/logos-messaging-nim.git
synced 2026-08-26 07:51:09 +00:00
Closes the RC10 story the previous commit set up: B keeps sending until one of its messages carries the repair request, A rebroadcasts m1, and both messages land in causal order. Nothing else in this repo exercises SDS-R end to end. The test spends minutes waiting for T_req to elapse, so it gets a new slow marker and the PR selection deselects it. That leaves it with no automatic runner, which the README now says out loud. The interop copy deferred the receiver's stop_and_destroy through a finalizer to work around a teardown segfault; #4109 fixed that, and the test tears the node down in a with-block like its neighbours.
50 lines
1.5 KiB
YAML
50 lines
1.5 KiB
YAML
name: e2e-api-tests
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
subset:
|
|
description: "Which wrapper subset to run: 'non-docker' or 'docker'."
|
|
type: string
|
|
required: false
|
|
default: "non-docker"
|
|
node_image:
|
|
description: "Node image used for the docker peers (docker subset only)."
|
|
type: string
|
|
required: false
|
|
default: ""
|
|
|
|
jobs:
|
|
api-e2e:
|
|
runs-on: ubuntu-22.04
|
|
timeout-minutes: 45
|
|
name: api-e2e
|
|
env:
|
|
NODE_2: ${{ inputs.node_image }}
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v4
|
|
|
|
# Consumes the shared library built by ci.yml's `build` job (same run).
|
|
- name: Download liblogosdelivery.so
|
|
uses: actions/download-artifact@v4
|
|
with:
|
|
name: liblogosdelivery
|
|
path: tests-e2e/vendor/logos-delivery-python-bindings/lib
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.12'
|
|
cache: 'pip'
|
|
cache-dependency-path: tests-e2e/requirements.txt
|
|
|
|
- name: Install Python deps
|
|
run: pip install -r tests-e2e/requirements.txt
|
|
|
|
- name: Run API/e2e tests (${{ inputs.subset }} subset)
|
|
working-directory: tests-e2e
|
|
run: |
|
|
echo "docker peer image: ${NODE_2:-public default (DEFAULT_NWAKU)}"
|
|
pytest tests/wrappers_tests -m "${{ inputs.subset == 'docker' && 'docker_required' || 'not docker_required and not slow' }}" --reruns 2
|