Commit 4e5a58ed authored by Mason Wilde's avatar Mason Wilde Committed by Commit Bot

ServiceConnection: add vpd serial number to SystemInfo

Adds a product_serial_number field to the SystemInfo struct.

Bug: chromium:1140684
Change-Id: Id5f2c5db4c4282e3b0f8561fbb5edf40d57d47b0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2506010Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
Reviewed-by: default avatarMaksim Ivanov <emaxx@chromium.org>
Commit-Queue: Mason Wilde <masonwilde@google.com>
Cr-Commit-Position: refs/heads/master@{#824162}
parent 88c86b11
......@@ -1240,6 +1240,8 @@ class DeviceStatusCollectorState : public StatusCollectorState {
system_status_out->set_vpd_sku_number(
system_info->product_sku_number.value());
}
system_status_out->set_vpd_serial_number(
system_info->product_serial_number);
}
if (report_system_info) {
system_status_out->set_marketing_name(system_info->marketing_name);
......
......@@ -146,6 +146,7 @@ constexpr char kFakeBatteryStatus[] = "fake_battery_status";
const char kFakeFirstPowerDate[] = "2020-40";
const char kFakeManufactureDate[] = "2019-01-01";
const char kFakeSkuNumber[] = "ABCD&^A";
const char kFakeSerialNumber[] = "8607G03EDF";
constexpr char kFakeMarketingName[] = "Latitude 1234 Chromebook Enterprise";
constexpr char kFakeBiosVersion[] = "Google_BoardName.12200.68.0";
constexpr char kFakeBoardName[] = "BoardName";
......@@ -523,9 +524,9 @@ cros_healthd::SystemResultPtr CreateSystemResult() {
return cros_healthd::SystemResult::NewSystemInfo(
cros_healthd::SystemInfo::New(
kFakeFirstPowerDate, kFakeManufactureDate, kFakeSkuNumber,
kFakeMarketingName, kFakeBiosVersion, kFakeBoardName,
kFakeBoardVersion, cros_healthd::UInt64Value::New(kFakeChassisType),
kFakeProductName,
kFakeSerialNumber, kFakeMarketingName, kFakeBiosVersion,
kFakeBoardName, kFakeBoardVersion,
cros_healthd::UInt64Value::New(kFakeChassisType), kFakeProductName,
cros_healthd::OsVersion::New(
kFakeVersionMilestone, kFakeVersionBuildNumber,
kFakeVersionPatchNumber, kFakeVersionReleaseChannel)));
......@@ -3179,6 +3180,8 @@ TEST_F(DeviceStatusCollectorTest, TestCrosHealthdInfo) {
EXPECT_EQ(device_status_.system_status().manufacture_date(),
kFakeManufactureDate);
EXPECT_EQ(device_status_.system_status().vpd_sku_number(), kFakeSkuNumber);
EXPECT_EQ(device_status_.system_status().vpd_serial_number(),
kFakeSerialNumber);
EXPECT_EQ(device_status_.system_status().marketing_name(),
kFakeMarketingName);
EXPECT_EQ(device_status_.system_status().bios_version(), kFakeBiosVersion);
......@@ -3334,6 +3337,8 @@ TEST_F(DeviceStatusCollectorTest, TestCrosHealthdVpdAndSystemInfo) {
EXPECT_EQ(device_status_.system_status().manufacture_date(),
kFakeManufactureDate);
EXPECT_EQ(device_status_.system_status().vpd_sku_number(), kFakeSkuNumber);
EXPECT_EQ(device_status_.system_status().vpd_serial_number(),
kFakeSerialNumber);
ASSERT_FALSE(device_status_.system_status().has_marketing_name());
ASSERT_FALSE(device_status_.system_status().has_bios_version());
ASSERT_FALSE(device_status_.system_status().has_board_name());
......
......@@ -479,6 +479,8 @@ struct SystemInfo {
string? manufacture_date;
// The product SKU number.
string? product_sku_number;
// The product serial number.
string product_serial_number;
// Contents of CrosConfig in /arc/build-properties/marketing-name.
string marketing_name;
// The BIOS version.
......
......@@ -1152,6 +1152,8 @@ message SystemStatus {
optional uint64 chassis_type = 8;
// The product name (model) of the system. E.g. "Sarien"
optional string product_name = 9;
// The product serial number.
optional string vpd_serial_number = 10;
}
// Status of a single C-state. C-states are various modes the CPU can transition
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment