#!/usr/bin/env bash # # Test hooks in villas node # # Author: Steffen Vogel <post@steffenvogel.de> # SPDX-FileCopyrightText: 2014-2023 Institute for Automation of Complex Power Systems, RWTH Aachen University # SPDX-License-Identifier: Apache-2.0 set -e DIR=$(mktemp -d) pushd ${DIR} function finish { popd rm -rf ${DIR} } trap finish EXIT cat > expect.dat <<EOF 1553690684.041211800-4.313770e-02(5) 6.303265 0.492616 0.309017 -1.000000 0.800000 0.050000 1553690684.051211800-5.287260e-02(6) 5.673902 0.148827 0.368125 -1.000000 0.760000 0.060000 1553690684.061211800-6.266780e-02(7) 5.896198 0.232320 0.425779 -1.000000 0.720000 0.070000 1553690684.071211800-7.256350e-02(8) 5.788125 0.152309 0.481754 -1.000000 0.680000 0.080000 1553690684.081211800-8.251890e-02(9) 6.748635 0.608491 0.535827 -1.000000 0.640000 0.090000 EOF cat > config.json <<EOF { "idle_stop": true, "nodes": { "sig": { "type": "signal", "signal": "mixed", "realtime": false, "limit": 10, "rate": 100, "values": 5 }, "file": { "type": "file", "uri": "output.dat" } }, "paths": [ { "in": "sig", "out": "file", "hooks": [ { "type": "average", "signals": [ "random", "sine", "square", "triangle", "ramp" ], "offset": 0 }, { "type": "skip_first", "samples": 5 }, { "type": "scale", "scale": 10, "offset": 5, "signal": "average" } ] } ] } EOF villas node config.json villas compare output.dat expect.dat