Merge branch 'main' of ssh://git.beafrancois.fr:8329/v-and-v/testium_trainings

This commit is contained in:
2026-05-02 09:35:26 +02:00
3 changed files with 90 additions and 0 deletions

View File

@@ -284,3 +284,47 @@ report:
\item \href{https://git.beafrancois.fr/v-and-v/testium/src/branch/main/test/validation}{ \tum{testium} validation suite}
\end{itemize}
\end{frame}
% ===== License =====
\subsection{License}
\begin{frame}{\tum{testium} license}
\begin{columns}
\column{0.5\textwidth}
\begin{itemize}
\item Distributed under the \textbf{EUPL-1.2}
\begin{itemize}
\item European Union Public Licence v1.2
\item Open-source, OSI / FSF approved
\item Governed by the law of the licensor's EU country (France)
\end{itemize}
\item SPDX identifier: \incode{EUPL-1.2}
\item Files in the repository:
\begin{itemize}
\item \incode{LICENSE} (full legal text)
\item \incode{CONTRIBUTING.md} (contribution rules)
\end{itemize}
\item Contributions follow the \emph{inbound = outbound} rule
\begin{itemize}
\item Any patch you submit is licensed under the same EUPL-1.2
\item No CLA, no copyright assignment
\end{itemize}
\end{itemize}
\column{0.5\textwidth}
\begin{itemize}
\item \textbf{You may}:
\begin{itemize}
\item Use \tum{testium} for any purpose, including commercial
\item Read, modify, redistribute the source code
\item Combine with code under GPL, AGPL, LGPL, MPL, CeCILL, EPL\ldots (compatibility appendix)
\end{itemize}
\item \textbf{You must}:
\begin{itemize}
\item Keep the copyright and license notices
\item Redistribute modified versions under the EUPL (or a compatible license)
\item Publish your modifications even when offering \tum{testium} as a network service (SaaS clause)
\end{itemize}
\item \textbf{No warranty}, no liability of the author
\end{itemize}
\end{columns}
\end{frame}

View File

@@ -33,6 +33,7 @@
\incode{jsonrpc} & JSON-RPC test item \\
\incode{let} & Defining variables \\
\incode{loop} & Container for repeating things \\
\incode{parallel} & Container for running branches concurrently \\
\incode{plot} & Runtime plot utility \\
\incode{report} & Extract a report file \\
\incode{run} & Runs a new instance of \tum{testium} \\
@@ -326,6 +327,51 @@ end
\end{columns}
\end{frame}
\begin{frame}[fragile]{\incode{parallel} test item}
\begin{columns}
\column{0.55\textwidth}
\begin{itemize}
\item \incode{branches}: list of concurrent branches; each branch has its own \incode{steps}
\item \incode{sync}
\begin{itemize}
\item \incode{all} (default): wait for every branch
\item \incode{any}: stop the others as soon as one finishes
\end{itemize}
\item \incode{wait\_for} (per branch): poll a condition before running the branch's steps
\item Each branch runs in its own thread:
\begin{itemize}
\item Live output prefixed \incode{[<branch>]}
\item One report row per branch (clean, no interleaving)
\end{itemize}
\end{itemize}
\column{0.45\textwidth}
\begin{listing}[H]
\begin{minted}[fontsize=\fontsize{6}{7}\selectfont]{yaml}
- parallel:
name: Read sensors
sync: all
branches:
- name: Temperature
steps:
- py_func:
name: read temp
file: sensors.py
func_name: read_temp
- name: Pressure
wait_for:
condition: <| "$(temp_ready)" == "1" |>
timeout: 5
steps:
- py_func:
name: read pressure
file: sensors.py
func_name: read_pressure
\end{minted}
\caption{\incode{parallel} usage example}
\end{listing}
\end{columns}
\end{frame}
\begin{frame}{\incode{dialog\_x} test items}
\begin{itemize}
\item Dialogs pop-up a message box with a question, information or more

Binary file not shown.