xref: /aosp_15_r20/system/logging/liblog/tests/liblog_device_preparer.sh (revision 598139dc91b21518d67c408eaea2644226490971)
1#!/bin/sh
2#
3# Copyright 2023 - The Android Open Source Project
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9#     http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16
17# Setups the device before running liblog tests. Recovers the state after the
18# tests are done. The setup and the tead-down phases are distinguished via the
19# first argument: [setup|teardown].
20
21if [ "$1" != setup -a "$1" != teardown ]; then
22    echo "Usage: $0 [setup|teardown]"
23    exit 1
24fi
25
26# b/279123901: If persist.log.tag is set, remove the sysprop during the test.
27PROP=persist.log.tag
28SAVED=/data/local/tests/persist.log.tag.saved
29if [ "$1" = setup ]; then
30    if [ -n "$(getprop ${PROP})" ]; then
31        getprop ${PROP} > ${SAVED}
32        setprop ${PROP} ""
33    fi
34elif [ "$1" = teardown ]; then
35    if [ -e ${SAVED} ]; then
36        setprop ${PROP} $(cat ${SAVED})
37        rm ${SAVED}
38    fi
39fi
40