Expose error codes in the CrxUpdateItem.
This allows the clients of UpdateClient inspect the error codes when
an update is complete.
Bug: 843657
Change-Id: I667a58a2723846cdcc4070fc9b103419ea4859d1
Reviewed-on: https://chromium-review.googlesource.com/1060586
Reviewed-by: Joshua Pawlicki <[email protected]>
Commit-Queue: Sorin Jianu <[email protected]>
Cr-Commit-Position: refs/heads/master@{#559256}
diff --git a/components/update_client/update_client_unittest.cc b/components/update_client/update_client_unittest.cc
index 8c747258..d5c35290 100644
--- a/components/update_client/update_client_unittest.cc
+++ b/components/update_client/update_client_unittest.cc
@@ -1064,7 +1064,15 @@
.Times(AtLeast(1));
EXPECT_CALL(observer, OnEvent(Events::COMPONENT_UPDATE_ERROR,
"jebgalgnebhfojomionfpkfelancnnkf"))
- .Times(1);
+ .Times(1)
+ .WillOnce(Invoke([&update_client](Events event, const std::string& id) {
+ CrxUpdateItem item;
+ update_client->GetCrxUpdateState(id, &item);
+ EXPECT_EQ(ComponentState::kUpdateError, item.state);
+ EXPECT_EQ(1, item.error_category);
+ EXPECT_EQ(-118, item.error_code);
+ EXPECT_EQ(0, item.extra_code1);
+ }));
}
{
InSequence seq;
@@ -1588,7 +1596,7 @@
EXPECT_EQ("jebgalgnebhfojomionfpkfelancnnkf", ping_data[0].id);
EXPECT_EQ(base::Version("0.9"), ping_data[0].previous_version);
EXPECT_EQ(base::Version("1.0"), ping_data[0].next_version);
- EXPECT_EQ(3, ping_data[0].error_category); // kInstallError.
+ EXPECT_EQ(3, ping_data[0].error_category); // kInstall.
EXPECT_EQ(9, ping_data[0].error_code); // kInstallerError.
}
};
@@ -3103,9 +3111,11 @@
const std::string id = "jebgalgnebhfojomionfpkfelancnnkf";
EXPECT_EQ(id, ids_to_check.front());
EXPECT_EQ(1u, components.count(id));
-
+ constexpr int update_check_error = -1;
+ components.at(id)->set_update_check_error(update_check_error);
base::ThreadTaskRunnerHandle::Get()->PostTask(
- FROM_HERE, base::BindOnce(std::move(update_check_callback), -1, 0));
+ FROM_HERE, base::BindOnce(std::move(update_check_callback),
+ update_check_error, 0));
}
};
@@ -3149,6 +3159,9 @@
CrxUpdateItem item;
update_client->GetCrxUpdateState(id, &item);
EXPECT_EQ(ComponentState::kUpdateError, item.state);
+ EXPECT_EQ(5, item.error_category);
+ EXPECT_EQ(-1, item.error_code);
+ EXPECT_EQ(0, item.extra_code1);
}));
update_client->AddObserver(&observer);