Skip to content

Rename capi-demo to c-api-demo (#9) #37

Rename capi-demo to c-api-demo (#9)

Rename capi-demo to c-api-demo (#9) #37

Workflow file for this run

name: Coverage
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
coverage:
name: C++ coverage (${{ matrix.os }})
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
os: [ubuntu-latest]
python-version: ["3.13"]
steps:
- uses: actions/checkout@v5
with:
submodules: true
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies (Linux)
if: runner.os == 'Linux'
run: |
sudo apt-get update
sudo apt-get install -y g++ clang cmake ninja-build \
libopenblas-dev liblapack-dev libeigen3-dev \
libopenmpi-dev openmpi-bin libomp-dev
- name: Install python library
run: |
python -m pip install --upgrade pip
pip install gcovr
- name: Clone submodules
run: git submodule update --init --recursive
- name: Build qiskit
run: |
cd deps/qiskit
make c
- name: Build qrmi
run: |
cd deps/qrmi
cargo build --release
- name: Configure CMake (Linux)
if: runner.os == 'Linux'
run: >
cmake -S . -B build
-G Ninja
-DCMAKE_BUILD_TYPE=Debug
-DCMAKE_CXX_FLAGS="-DUSE_RANDOM_SHOTS=1 --coverage"
- name: CMake Build
run: cmake --build build -j4
- name: Run tests
run: |
cd build
./c-api-demo \
--fcidump ../data/fcidump_Fe4S4_MO.txt \
--tolerance 1.0e-3 \
--max_time 600 \
--recovery 1 \
--number_of_samples 300 \
--num_shots 1000
- name: Convert to json for coveralls
if: always()
run: >
gcovr --coveralls coveralls.json \
--root . \
--object-directory build \
--exclude deps \
--gcov-ignore-errors=no_working_dir_found