1syntax = "proto2";
2
3package chre_stress_test;
4
5option java_package = "com.google.android.chre.nanoapp.proto";
6option java_outer_classname = "ChreStressTest";
7
8// Nanoapp message type can be either host to chre (H2C) or chre to host (C2H)
9enum MessageType {
10  // Reserved for corrupted messages
11  UNDEFINED = 0;
12
13  // H2C: A message to start/stop the test.
14  // Payload must be TestCommand.
15  TEST_COMMAND = 1;
16
17  // C2H: A message indicating the test result. The nanoapp will only use this
18  // message to report a failure.
19  // Payload must be chre_test_common.TestResult.
20  TEST_RESULT = 2;
21
22  // C2H: A message indicating that the stress test nanoapp has received a
23  // WiFi scan while enabling scan monitoring. This can be used for the host
24  // to verify that the scan monitoring feature is working.
25  // No payload.
26  TEST_WIFI_SCAN_MONITOR_TRIGGERED = 3;
27
28  // H2C: A message indicating that the host client has restarted. The nanoapp
29  // should use this message to update its host endpoint tracking when sending
30  // unicast messages.
31  // No payload.
32  TEST_HOST_RESTARTED = 4;
33}
34
35// A message to start the test.
36message TestCommand {
37  enum Feature {
38    FEATURE_UNDEFINED = 0;
39    // WiFi stress testing, no scan monitoring.
40    WIFI_ON_DEMAND_SCAN = 1;
41    GNSS_LOCATION = 2;
42    GNSS_MEASUREMENT = 3;
43    WWAN = 4;
44    // Enables WiFi scan monitoring only.
45    WIFI_SCAN_MONITOR = 5;
46  }
47
48  // The feature to test.
49  optional Feature feature = 1;
50
51  // True to start the test, false to stop.
52  optional bool start = 2;
53}
54