1#!/usr/bin/env python3 2# Copyright (C) 2023 The Android Open Source Project 3# 4# Licensed under the Apache License, Version 2.0 (the "License"); 5# you may not use this file except in compliance with the License. 6# You may obtain a copy of the License a 7# 8# http://www.apache.org/licenses/LICENSE-2.0 9# 10# Unless required by applicable law or agreed to in writing, software 11# distributed under the License is distributed on an "AS IS" BASIS, 12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13# See the License for the specific language governing permissions and 14# limitations under the License. 15 16from python.generators.diff_tests.testing import Path, DataPath, Metric 17from python.generators.diff_tests.testing import Csv, Json, TextProto 18from python.generators.diff_tests.testing import DiffTestBlueprint 19from python.generators.diff_tests.testing import TestSuite 20 21 22class Cros(TestSuite): 23 # cros_ec_sensorhub_data 24 def test_cros_ec_sensorhub_data(self): 25 return DiffTestBlueprint( 26 trace=TextProto(r""" 27 packet { 28 ftrace_events { 29 cpu: 0 30 event { 31 timestamp: 223951135789653 32 pid: 181 33 cros_ec_sensorhub_data { 34 current_time: 223951135778716 35 current_timestamp: 223951052378946 36 delta: -83399770 37 ec_fifo_timestamp: 2128620968 38 ec_sensor_num: 0 39 fifo_timestamp: 223951132978872 40 } 41 } 42 } 43 } 44 """), 45 query=""" 46 SELECT 47 t.name, 48 c.ts, 49 c.value, 50 EXTRACT_ARG(c.arg_set_id, 'ec_num') AS ec_num, 51 EXTRACT_ARG(c.arg_set_id, 'ec_delta') AS ec_delta, 52 EXTRACT_ARG(c.arg_set_id, 'sample_ts') AS sample_ts 53 FROM counter c 54 JOIN track t 55 ON c.track_id = t.id 56 WHERE t.name = 'cros_ec.cros_ec_sensorhub_data.0'; 57 """, 58 out=Path('cros_ec_sensorhub_data.out')) 59