blob: 19e5731e3febc8170a04ed24e3178d60354eb5c1 [file] [log] [blame]
{
include: [ "//src/sys/test_runners/inspect/default.shard.cml" ],
program: {
accessor: "ALL",
timeout_seconds: "5",
cases: [
// Ensure that component manager has at least one CPU sample
// and that all present samples are greater than 0.
// Samples must contain non-zero entries for cpu_time,
// queue_time, and timestamp.
"<component_manager>:root/cpu_stats/measurements/components/<component_manager>/*/@samples/*:cpu_time WHERE [a] And(Count(a) > 0, Count(a) == Count(Filter(Fn([b], b > 0), a)))",
"<component_manager>:root/cpu_stats/measurements/components/<component_manager>/*/@samples/*:queue_time WHERE [a] And(Count(a) > 0, Count(a) == Count(Filter(Fn([b], b > 0), a)))",
"<component_manager>:root/cpu_stats/measurements/components/<component_manager>/*/@samples/*:timestamp WHERE [a] And(Count(a) > 0, Count(a) == Count(Filter(Fn([b], b > 0), a)))",
// Ensure that appmgr has at least one CPU sample
// and that all present samples are greater than 0.
// Samples must contain non-zero entries for cpu_time,
// queue_time, and timestamp.
"<component_manager>:root/cpu_stats/measurements/components/core\\/appmgr/*/@samples/*:cpu_time WHERE [a] And(Count(a) > 0, Count(a) == Count(Filter(Fn([b], b > 0), a)))",
"<component_manager>:root/cpu_stats/measurements/components/core\\/appmgr/*/@samples/*:queue_time WHERE [a] And(Count(a) > 0, Count(a) == Count(Filter(Fn([b], b > 0), a)))",
"<component_manager>:root/cpu_stats/measurements/components/core\\/appmgr/*/@samples/*:timestamp WHERE [a] And(Count(a) > 0, Count(a) == Count(Filter(Fn([b], b > 0), a)))",
// TODO(fxbug.dev/75656): Reenable
// Ensure that component manager has at least 2MB of space for CPU measurements and that not all of it is used.
// "<component_manager>:root/cpu_stats/measurements/fuchsia.inspect.Stats:current_size WHERE [a] a < 2*1024*1024",
// "<component_manager>:root/cpu_stats/measurements/fuchsia.inspect.Stats:maximum_size WHERE [a] a >= 2*1024*1024",
// Component manager exposes the number of tracked tasks, and the value is not zero.
"<component_manager>:root/cpu_stats/measurements:task_count WHERE [a] a > 0",
// Component manager contains recent cpu usage stats. If
// previous is not included, there are 3 measurements, otherwise
// there are 6.
"<component_manager>:root/cpu_stats/recent_usage:* WHERE [a] Or(Count(a) == 3, Count(a) == 6)",
// Component manager exposes cpu stats processing times.
"<component_manager>:root/cpu_stats:processing_times_ns WHERE [a] Not(Missing(a))",
],
},
}