162306a36Sopenharmony_ci#!/bin/sh
262306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
362306a36Sopenharmony_ci# description: event trigger - test snapshot-trigger
462306a36Sopenharmony_ci# requires: set_event events/sched/sched_process_fork/trigger snapshot
562306a36Sopenharmony_ci
662306a36Sopenharmony_cifail() { #msg
762306a36Sopenharmony_ci    echo $1
862306a36Sopenharmony_ci    exit_fail
962306a36Sopenharmony_ci}
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ciFEATURE=`grep snapshot events/sched/sched_process_fork/trigger`
1262306a36Sopenharmony_ciif [ -z "$FEATURE" ]; then
1362306a36Sopenharmony_ci    echo "snapshot trigger is not supported"
1462306a36Sopenharmony_ci    exit_unsupported
1562306a36Sopenharmony_cifi
1662306a36Sopenharmony_ci
1762306a36Sopenharmony_ciecho "Test snapshot trigger"
1862306a36Sopenharmony_ciecho 0 > snapshot
1962306a36Sopenharmony_ciecho 1 > events/sched/sched_process_fork/enable
2062306a36Sopenharmony_ci( echo "forked")
2162306a36Sopenharmony_ciecho 'snapshot:1' > events/sched/sched_process_fork/trigger
2262306a36Sopenharmony_ci( echo "forked")
2362306a36Sopenharmony_cigrep sched_process_fork snapshot > /dev/null || \
2462306a36Sopenharmony_ci    fail "snapshot trigger on sched_process_fork did not work"
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_cireset_trigger
2762306a36Sopenharmony_ciecho 0 > snapshot
2862306a36Sopenharmony_ciecho 0 > events/sched/sched_process_fork/enable
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ciecho "Test snapshot semantic errors"
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci! echo "snapshot+1" > events/sched/sched_process_fork/trigger
3362306a36Sopenharmony_ciecho "snapshot" > events/sched/sched_process_fork/trigger
3462306a36Sopenharmony_ci! echo "snapshot" > events/sched/sched_process_fork/trigger
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ciexit 0
37