Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5146)

Unified Diff: chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident_unittest.cc

Issue 856543004: Replace incident type handlers with implementations of Incident. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: robertshield comments Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident_unittest.cc
diff --git a/chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident_unittest.cc b/chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident_unittest.cc
new file mode 100644
index 0000000000000000000000000000000000000000..7dedefac463547b81c0b6a48dfd2aabe3a38c86e
--- /dev/null
+++ b/chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident_unittest.cc
@@ -0,0 +1,60 @@
+// Copyright 2015 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "chrome/browser/safe_browsing/incident_reporting/binary_integrity_incident.h"
+
+#include "base/memory/scoped_ptr.h"
+#include "chrome/common/safe_browsing/csd.pb.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace safe_browsing {
+
+namespace {
+
+scoped_ptr<Incident> MakeIncident(const char* file_basename) {
+ scoped_ptr<ClientIncidentReport_IncidentData_BinaryIntegrityIncident>
+ incident(new ClientIncidentReport_IncidentData_BinaryIntegrityIncident);
+
+ incident->set_file_basename(file_basename);
+
+ // Set the signature.
+ incident->mutable_signature()->set_trusted(true);
+ ClientDownloadRequest_CertificateChain* certificate_chain =
+ incident->mutable_signature()->add_certificate_chain();
+
+ // Fill the certificate chain with 2 elements.
+ const unsigned char certificates[][5] = {
+ {42, 255, 100, 53, 2},
+ {64, 33, 51, 91, 210},
+ };
+ for (size_t i = 0; i < arraysize(certificates); ++i) {
+ ClientDownloadRequest_CertificateChain_Element* element =
+ certificate_chain->add_element();
+ element->set_certificate(certificates[i], arraysize(certificates[i]));
+ }
+
+ return make_scoped_ptr(new BinaryIntegrityIncident(incident.Pass()));
+}
+
+} // namespace
+
+TEST(BinaryIntegrityIncident, GetType) {
+ ASSERT_EQ(IncidentType::BINARY_INTEGRITY, MakeIncident("foo")->GetType());
+}
+
+TEST(BinaryIntegrityIncident, GetKeyIsFile) {
+ ASSERT_EQ(std::string("foo"), MakeIncident("foo")->GetKey());
+}
+
+TEST(BinaryIntegrityIncident, SameIncidentSameDigest) {
+ ASSERT_EQ(MakeIncident("foo")->ComputeDigest(),
+ MakeIncident("foo")->ComputeDigest());
+}
+
+TEST(BinaryIntegrityIncident, DifferentIncidentDifferentDigest) {
+ ASSERT_NE(MakeIncident("foo")->ComputeDigest(),
+ MakeIncident("bar")->ComputeDigest());
+}
+
+} // namespace safe_browsing

Powered by Google App Engine
This is Rietveld 408576698