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

Side by Side Diff: net/quic/core/quic_bandwidth_test.cc

Issue 2309603002: Round results of multiplying QuicBandwidth and QuicTime::Delta rather than truncating. No behavior… (Closed)
Patch Set: Created 4 years, 3 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
« no previous file with comments | « net/quic/core/quic_bandwidth.h ('k') | net/quic/core/quic_time.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "net/quic/core/quic_bandwidth.h" 5 #include "net/quic/core/quic_bandwidth.h"
6 #include "testing/gtest/include/gtest/gtest.h" 6 #include "testing/gtest/include/gtest/gtest.h"
7 7
8 namespace net { 8 namespace net {
9 namespace test { 9 namespace test {
10 10
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 1000, QuicTime::Delta::FromMilliseconds(100))); 56 1000, QuicTime::Delta::FromMilliseconds(100)));
57 } 57 }
58 58
59 TEST_F(QuicBandwidthTest, Scale) { 59 TEST_F(QuicBandwidthTest, Scale) {
60 EXPECT_EQ(QuicBandwidth::FromKBytesPerSecond(500), 60 EXPECT_EQ(QuicBandwidth::FromKBytesPerSecond(500),
61 QuicBandwidth::FromKBytesPerSecond(1000) * 0.5f); 61 QuicBandwidth::FromKBytesPerSecond(1000) * 0.5f);
62 EXPECT_EQ(QuicBandwidth::FromKBytesPerSecond(750), 62 EXPECT_EQ(QuicBandwidth::FromKBytesPerSecond(750),
63 0.75f * QuicBandwidth::FromKBytesPerSecond(1000)); 63 0.75f * QuicBandwidth::FromKBytesPerSecond(1000));
64 EXPECT_EQ(QuicBandwidth::FromKBytesPerSecond(1250), 64 EXPECT_EQ(QuicBandwidth::FromKBytesPerSecond(1250),
65 QuicBandwidth::FromKBytesPerSecond(1000) * 1.25f); 65 QuicBandwidth::FromKBytesPerSecond(1000) * 1.25f);
66
67 // Ensure we are rounding correctly within a 1bps level of precision.
68 EXPECT_EQ(QuicBandwidth::FromBitsPerSecond(5),
69 QuicBandwidth::FromBitsPerSecond(9) * 0.5);
70 EXPECT_EQ(QuicBandwidth::FromBitsPerSecond(2),
71 QuicBandwidth::FromBitsPerSecond(12) * 0.2);
66 } 72 }
67 73
68 TEST_F(QuicBandwidthTest, BytesPerPeriod) { 74 TEST_F(QuicBandwidthTest, BytesPerPeriod) {
69 EXPECT_EQ(2000u, QuicBandwidth::FromKBytesPerSecond(2000) 75 EXPECT_EQ(2000u, QuicBandwidth::FromKBytesPerSecond(2000)
70 .ToBytesPerPeriod(QuicTime::Delta::FromMilliseconds(1))); 76 .ToBytesPerPeriod(QuicTime::Delta::FromMilliseconds(1)));
71 EXPECT_EQ(2u, QuicBandwidth::FromKBytesPerSecond(2000) 77 EXPECT_EQ(2u, QuicBandwidth::FromKBytesPerSecond(2000)
72 .ToKBytesPerPeriod(QuicTime::Delta::FromMilliseconds(1))); 78 .ToKBytesPerPeriod(QuicTime::Delta::FromMilliseconds(1)));
73 EXPECT_EQ(200000u, QuicBandwidth::FromKBytesPerSecond(2000).ToBytesPerPeriod( 79 EXPECT_EQ(200000u, QuicBandwidth::FromKBytesPerSecond(2000).ToBytesPerPeriod(
74 QuicTime::Delta::FromMilliseconds(100))); 80 QuicTime::Delta::FromMilliseconds(100)));
75 EXPECT_EQ(200u, QuicBandwidth::FromKBytesPerSecond(2000).ToKBytesPerPeriod( 81 EXPECT_EQ(200u, QuicBandwidth::FromKBytesPerSecond(2000).ToKBytesPerPeriod(
(...skipping 30 matching lines...) Expand all
106 112
107 bandwidth = bandwidth * 1000; 113 bandwidth = bandwidth * 1000;
108 EXPECT_EQ("400.00 Mbits/s (50.00 Mbytes/s)", bandwidth.ToDebugValue()); 114 EXPECT_EQ("400.00 Mbits/s (50.00 Mbytes/s)", bandwidth.ToDebugValue());
109 115
110 bandwidth = bandwidth * 1000; 116 bandwidth = bandwidth * 1000;
111 EXPECT_EQ("400.00 Gbits/s (50.00 Gbytes/s)", bandwidth.ToDebugValue()); 117 EXPECT_EQ("400.00 Gbits/s (50.00 Gbytes/s)", bandwidth.ToDebugValue());
112 } 118 }
113 119
114 } // namespace test 120 } // namespace test
115 } // namespace net 121 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/core/quic_bandwidth.h ('k') | net/quic/core/quic_time.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698