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

Side by Side Diff: chrome/browser/safe_browsing/binary_integrity_incident_handlers_unittest.cc

Issue 470213002: Moving all the incident reporting stuff to a common folder (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@binsign
Patch Set: Created 6 years, 4 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/safe_browsing/binary_integrity_incident_handlers.h"
6
7 #include "base/memory/scoped_ptr.h"
8 #include "chrome/common/safe_browsing/csd.pb.h"
9 #include "testing/gtest/include/gtest/gtest.h"
10
11 namespace safe_browsing {
12
13 namespace {
14
15 scoped_ptr<ClientIncidentReport_IncidentData> MakeIncident() {
16 scoped_ptr<ClientIncidentReport_IncidentData> incident(
17 new ClientIncidentReport_IncidentData);
18
19 incident->mutable_binary_integrity()->set_file_basename("foo");
20
21 // Set the signature.
22 incident->mutable_binary_integrity()->mutable_signature()->set_trusted(true);
23 ClientDownloadRequest_CertificateChain* certificate_chain =
24 incident->mutable_binary_integrity()->mutable_signature()
25 ->add_certificate_chain();
26
27 // Fill the certificate chain with 2 elements.
28 const unsigned char certificates[][5] = {
29 {42, 255, 100, 53, 2},
30 {64, 33, 51, 91, 210},
31 };
32 for (size_t i = 0; i < arraysize(certificates); ++i) {
33 ClientDownloadRequest_CertificateChain_Element* element =
34 certificate_chain->add_element();
35 element->set_certificate(certificates[i], arraysize(certificates[i]));
36 }
37
38 return incident.Pass();
39 }
40
41 } // namespace
42
43 TEST(BinaryIntegrityIncidentHandlersTest, GetKeyIsFile) {
44 ClientIncidentReport_IncidentData incident;
45
46 incident.mutable_binary_integrity()->set_file_basename("foo");
47 ASSERT_EQ(std::string("foo"), GetBinaryIntegrityIncidentKey(incident));
48 }
49
50 TEST(BinaryIntegrityIncidentHandlersTest, SameIncidentSameDigest) {
51 scoped_ptr<ClientIncidentReport_IncidentData> incident(MakeIncident());
52
53 uint32_t digest = GetBinaryIntegrityIncidentDigest(*incident);
54 ASSERT_EQ(digest, GetBinaryIntegrityIncidentDigest(*MakeIncident()));
55 }
56
57 TEST(BinaryIntegrityIncidentHandlersTest, DifferentIncidentDifferentDigest) {
58 scoped_ptr<ClientIncidentReport_IncidentData> incident(MakeIncident());
59
60 uint32_t digest = GetBinaryIntegrityIncidentDigest(*incident);
61
62 scoped_ptr<ClientIncidentReport_IncidentData> incident2(MakeIncident());
63 incident2->mutable_binary_integrity()->set_file_basename("bar");
64
65 ASSERT_NE(digest, GetBinaryIntegrityIncidentDigest(*incident2));
66 }
67
68 } // namespace safe_browsing
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698