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

Side by Side Diff: components/rappor/rappor_metric_unittest.cc

Issue 1090683003: Alternative Multi-dimensional Rappor (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 8 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
1 // Copyright 2014 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/rappor/rappor_metric.h" 5 #include "components/rappor/rappor_metric.h"
6 6
7 #include <stdlib.h> 7 #include <stdlib.h>
8 8
9 #include "base/rand_util.h" 9 #include "base/rand_util.h"
10 #include "base/strings/stringprintf.h" 10 #include "base/strings/stringprintf.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 12
13 namespace rappor { 13 namespace rappor {
14 14
15 const RapporParameters kTestRapporParameters = { 15 const RapporParameters kTestRapporParameters = {
16 1 /* Num cohorts */, 16 1 /* Num cohorts */,
17 16 /* Bloom filter size bytes */, 17 16 /* Bloom filter size bytes */,
18 4 /* Bloom filter hash count */, 18 4 /* Bloom filter hash count */,
19 0 /* Flag bytes */,
19 PROBABILITY_75 /* Fake data probability */, 20 PROBABILITY_75 /* Fake data probability */,
20 PROBABILITY_50 /* Fake one probability */, 21 PROBABILITY_50 /* Fake one probability */,
21 PROBABILITY_75 /* One coin probability */, 22 PROBABILITY_75 /* One coin probability */,
22 PROBABILITY_50 /* Zero coin probability */, 23 PROBABILITY_50 /* Zero coin probability */,
23 FINE_LEVEL /* Reporting level (not used) */}; 24 FINE_LEVEL /* Reporting level (not used) */};
24 25
25 const RapporParameters kTestStatsRapporParameters = { 26 const RapporParameters kTestStatsRapporParameters = {
26 1 /* Num cohorts */, 27 1 /* Num cohorts */,
27 50 /* Bloom filter size bytes */, 28 50 /* Bloom filter size bytes */,
28 4 /* Bloom filter hash count */, 29 4 /* Bloom filter hash count */,
30 0 /* Flag bytes */,
29 PROBABILITY_75 /* Fake data probability */, 31 PROBABILITY_75 /* Fake data probability */,
30 PROBABILITY_50 /* Fake one probability */, 32 PROBABILITY_50 /* Fake one probability */,
31 PROBABILITY_75 /* One coin probability */, 33 PROBABILITY_75 /* One coin probability */,
32 PROBABILITY_50 /* Zero coin probability */, 34 PROBABILITY_50 /* Zero coin probability */,
33 FINE_LEVEL /* Reporting level (not used) */}; 35 FINE_LEVEL /* Reporting level (not used) */};
34 36
35 // Check for basic syntax and use. 37 // Check for basic syntax and use.
36 TEST(RapporMetricTest, BasicMetric) { 38 TEST(RapporMetricTest, BasicMetric) {
37 RapporMetric testMetric("MyRappor", kTestRapporParameters, 0); 39 RapporMetric testMetric("MyRappor", kTestRapporParameters, 0);
38 testMetric.AddSample("Bar"); 40 testMetric.AddSample("Bar");
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 // stats.binom(152, 0.65625).ppf(0.999995) = 124 94 // stats.binom(152, 0.65625).ppf(0.999995) = 124
93 EXPECT_LE(true_from_true_count, 124); 95 EXPECT_LE(true_from_true_count, 124);
94 96
95 // stats.binom(248, 0.59375).ppf(.000005) = 113 97 // stats.binom(248, 0.59375).ppf(.000005) = 113
96 EXPECT_GT(true_from_false_count, 113); 98 EXPECT_GT(true_from_false_count, 113);
97 // stats.binom(248, 0.59375).ppf(.999995) = 181 99 // stats.binom(248, 0.59375).ppf(.999995) = 181
98 EXPECT_LE(true_from_false_count, 181); 100 EXPECT_LE(true_from_false_count, 181);
99 } 101 }
100 102
101 } // namespace rappor 103 } // namespace rappor
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698