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

Side by Side Diff: third_party/WebKit/Source/wtf/MathExtrasTest.cpp

Issue 1436153002: Apply clang-format with Chromium-style without column limit. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 1 month 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 /* 1 /*
2 * Copyright (C) 2012 Intel Corporation 2 * Copyright (C) 2012 Intel Corporation
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 12 matching lines...) Expand all
23 * THE POSSIBILITY OF SUCH DAMAGE. 23 * THE POSSIBILITY OF SUCH DAMAGE.
24 */ 24 */
25 25
26 #include "config.h" 26 #include "config.h"
27 #include "wtf/MathExtras.h" 27 #include "wtf/MathExtras.h"
28 28
29 #include <gtest/gtest.h> 29 #include <gtest/gtest.h>
30 30
31 namespace WTF { 31 namespace WTF {
32 32
33 TEST(MathExtrasTest, Lrint) 33 TEST(MathExtrasTest, Lrint) {
34 { 34 EXPECT_EQ(-8, lrint(-7.5));
35 EXPECT_EQ(-8, lrint(-7.5)); 35 EXPECT_EQ(-8, lrint(-8.5));
36 EXPECT_EQ(-8, lrint(-8.5)); 36 EXPECT_EQ(0, lrint(-0.5));
37 EXPECT_EQ(0, lrint(-0.5)); 37 EXPECT_EQ(0, lrint(0.5));
38 EXPECT_EQ(0, lrint(0.5)); 38 EXPECT_EQ(0, lrint(-0.5));
39 EXPECT_EQ(0, lrint(-0.5)); 39 EXPECT_EQ(1, lrint(1.3));
40 EXPECT_EQ(1, lrint(1.3)); 40 EXPECT_EQ(2, lrint(1.7));
41 EXPECT_EQ(2, lrint(1.7)); 41 EXPECT_EQ(0, lrint(0));
42 EXPECT_EQ(0, lrint(0)); 42 EXPECT_EQ(0, lrint(-0));
43 EXPECT_EQ(0, lrint(-0)); 43 if (sizeof(long int) == 8) {
44 if (sizeof(long int) == 8) { 44 // Largest double number with 0.5 precision and one halfway rounding case be low.
45 // Largest double number with 0.5 precision and one halfway rounding cas e below. 45 EXPECT_EQ(pow(2.0, 52), lrint(pow(2.0, 52) - 0.5));
46 EXPECT_EQ(pow(2.0, 52), lrint(pow(2.0, 52) - 0.5)); 46 EXPECT_EQ(pow(2.0, 52) - 2, lrint(pow(2.0, 52) - 1.5));
47 EXPECT_EQ(pow(2.0, 52) - 2, lrint(pow(2.0, 52) - 1.5)); 47 // Smallest double number with 0.5 precision and one halfway rounding case a bove.
48 // Smallest double number with 0.5 precision and one halfway rounding ca se above. 48 EXPECT_EQ(-pow(2.0, 52), lrint(-pow(2.0, 52) + 0.5));
49 EXPECT_EQ(-pow(2.0, 52), lrint(-pow(2.0, 52) + 0.5)); 49 EXPECT_EQ(-pow(2.0, 52) + 2, lrint(-pow(2.0, 52) + 1.5));
50 EXPECT_EQ(-pow(2.0, 52) + 2, lrint(-pow(2.0, 52) + 1.5)); 50 }
51 } 51 }
52 } 52
53 53 TEST(MathExtrasTest, clampToIntLong) {
54 TEST(MathExtrasTest, clampToIntLong) 54 if (sizeof(long) == sizeof(int))
55 { 55 return;
56 if (sizeof(long) == sizeof(int)) 56
57 return; 57 long maxInt = std::numeric_limits<int>::max();
58 58 long minInt = std::numeric_limits<int>::min();
59 long maxInt = std::numeric_limits<int>::max(); 59 long overflowInt = maxInt + 1;
60 long minInt = std::numeric_limits<int>::min(); 60 long underflowInt = minInt - 1;
61 long overflowInt = maxInt + 1; 61
62 long underflowInt = minInt - 1; 62 EXPECT_GT(overflowInt, maxInt);
63 63 EXPECT_LT(underflowInt, minInt);
64 EXPECT_GT(overflowInt, maxInt); 64
65 EXPECT_LT(underflowInt, minInt); 65 EXPECT_EQ(maxInt, clampTo<int>(maxInt));
66 66 EXPECT_EQ(minInt, clampTo<int>(minInt));
67 EXPECT_EQ(maxInt, clampTo<int>(maxInt)); 67
68 EXPECT_EQ(minInt, clampTo<int>(minInt)); 68 EXPECT_EQ(maxInt, clampTo<int>(overflowInt));
69 69 EXPECT_EQ(minInt, clampTo<int>(underflowInt));
70 EXPECT_EQ(maxInt, clampTo<int>(overflowInt)); 70 }
71 EXPECT_EQ(minInt, clampTo<int>(underflowInt)); 71
72 } 72 TEST(MathExtrasTest, clampToIntLongLong) {
73 73 long long maxInt = std::numeric_limits<int>::max();
74 TEST(MathExtrasTest, clampToIntLongLong) 74 long long minInt = std::numeric_limits<int>::min();
75 { 75 long long overflowInt = maxInt + 1;
76 long long maxInt = std::numeric_limits<int>::max(); 76 long long underflowInt = minInt - 1;
77 long long minInt = std::numeric_limits<int>::min(); 77
78 long long overflowInt = maxInt + 1; 78 EXPECT_GT(overflowInt, maxInt);
79 long long underflowInt = minInt - 1; 79 EXPECT_LT(underflowInt, minInt);
80 80
81 EXPECT_GT(overflowInt, maxInt); 81 EXPECT_EQ(maxInt, clampTo<int>(maxInt));
82 EXPECT_LT(underflowInt, minInt); 82 EXPECT_EQ(minInt, clampTo<int>(minInt));
83 83
84 EXPECT_EQ(maxInt, clampTo<int>(maxInt)); 84 EXPECT_EQ(maxInt, clampTo<int>(overflowInt));
85 EXPECT_EQ(minInt, clampTo<int>(minInt)); 85 EXPECT_EQ(minInt, clampTo<int>(underflowInt));
86 86 }
87 EXPECT_EQ(maxInt, clampTo<int>(overflowInt)); 87
88 EXPECT_EQ(minInt, clampTo<int>(underflowInt)); 88 TEST(MathExtrasTest, clampToIntFloat) {
89 } 89 float maxInt = static_cast<float>(std::numeric_limits<int>::max());
90 90 float minInt = static_cast<float>(std::numeric_limits<int>::min());
91 TEST(MathExtrasTest, clampToIntFloat) 91 float overflowInt = maxInt * 1.1f;
92 { 92 float underflowInt = minInt * 1.1f;
93 float maxInt = static_cast<float>(std::numeric_limits<int>::max()); 93
94 float minInt = static_cast<float>(std::numeric_limits<int>::min()); 94 EXPECT_GT(overflowInt, maxInt);
95 float overflowInt = maxInt * 1.1f; 95 EXPECT_LT(underflowInt, minInt);
96 float underflowInt = minInt * 1.1f; 96
97 97 EXPECT_EQ(maxInt, clampTo<int>(maxInt));
98 EXPECT_GT(overflowInt, maxInt); 98 EXPECT_EQ(minInt, clampTo<int>(minInt));
99 EXPECT_LT(underflowInt, minInt); 99
100 100 EXPECT_EQ(maxInt, clampTo<int>(overflowInt));
101 EXPECT_EQ(maxInt, clampTo<int>(maxInt)); 101 EXPECT_EQ(minInt, clampTo<int>(underflowInt));
102 EXPECT_EQ(minInt, clampTo<int>(minInt)); 102
103 103 // This value and the value one greater are typically represented the same
104 EXPECT_EQ(maxInt, clampTo<int>(overflowInt)); 104 // way when stored in a 32-bit float. Make sure clamping does not cause us
105 EXPECT_EQ(minInt, clampTo<int>(underflowInt)); 105 // to erroneously jump to the larger value.
106 106 int nearFloatPrecisionLimit = 2147483520;
107 // This value and the value one greater are typically represented the same 107 EXPECT_EQ(nearFloatPrecisionLimit, clampTo<int>(static_cast<float>(nearFloatPr ecisionLimit), 0, nearFloatPrecisionLimit + 1));
108 // way when stored in a 32-bit float. Make sure clamping does not cause us 108 EXPECT_EQ(-nearFloatPrecisionLimit, clampTo<int>(static_cast<float>(-nearFloat PrecisionLimit), -nearFloatPrecisionLimit - 1, 0));
109 // to erroneously jump to the larger value. 109 }
110 int nearFloatPrecisionLimit = 2147483520; 110
111 EXPECT_EQ(nearFloatPrecisionLimit, clampTo<int>(static_cast<float>(nearFloat PrecisionLimit), 0, nearFloatPrecisionLimit + 1)); 111 TEST(MathExtrasTest, clampToIntDouble) {
112 EXPECT_EQ(-nearFloatPrecisionLimit, clampTo<int>(static_cast<float>(-nearFlo atPrecisionLimit), -nearFloatPrecisionLimit - 1, 0)); 112 int maxInt = std::numeric_limits<int>::max();
113 } 113 int minInt = std::numeric_limits<int>::min();
114 114 double almostOverflowInt = maxInt - 0.5;
115 TEST(MathExtrasTest, clampToIntDouble) 115 double overflowInt = maxInt + 0.5;
116 { 116 double almostUnderflowInt = minInt + 0.5;
117 int maxInt = std::numeric_limits<int>::max(); 117 double underflowInt = minInt - 0.5;
118 int minInt = std::numeric_limits<int>::min(); 118
119 double almostOverflowInt = maxInt - 0.5; 119 EXPECT_LT(almostOverflowInt, maxInt);
120 double overflowInt = maxInt + 0.5; 120 EXPECT_GT(overflowInt, maxInt);
121 double almostUnderflowInt = minInt + 0.5; 121 EXPECT_GT(almostUnderflowInt, minInt);
122 double underflowInt = minInt - 0.5; 122 EXPECT_LT(underflowInt, minInt);
123 123
124 EXPECT_LT(almostOverflowInt, maxInt); 124 EXPECT_EQ(maxInt, clampTo<int>(static_cast<double>(maxInt)));
125 EXPECT_GT(overflowInt, maxInt); 125 EXPECT_EQ(minInt, clampTo<int>(static_cast<double>(minInt)));
126 EXPECT_GT(almostUnderflowInt, minInt); 126
127 EXPECT_LT(underflowInt, minInt); 127 EXPECT_EQ(maxInt - 1, clampTo<int>(almostOverflowInt));
128 128 EXPECT_EQ(maxInt, clampTo<int>(overflowInt));
129 EXPECT_EQ(maxInt, clampTo<int>(static_cast<double>(maxInt))); 129 EXPECT_EQ(minInt + 1, clampTo<int>(almostUnderflowInt));
130 EXPECT_EQ(minInt, clampTo<int>(static_cast<double>(minInt))); 130 EXPECT_EQ(minInt, clampTo<int>(underflowInt));
131 131 }
132 EXPECT_EQ(maxInt - 1, clampTo<int>(almostOverflowInt)); 132
133 EXPECT_EQ(maxInt, clampTo<int>(overflowInt)); 133 TEST(MathExtrasTest, clampToFloatDouble) {
134 EXPECT_EQ(minInt + 1, clampTo<int>(almostUnderflowInt)); 134 double maxFloat = std::numeric_limits<float>::max();
135 EXPECT_EQ(minInt, clampTo<int>(underflowInt)); 135 double minFloat = -maxFloat;
136 } 136 double overflowFloat = maxFloat * 1.1;
137 137 double underflowFloat = minFloat * 1.1;
138 TEST(MathExtrasTest, clampToFloatDouble) 138
139 { 139 EXPECT_GT(overflowFloat, maxFloat);
140 double maxFloat = std::numeric_limits<float>::max(); 140 EXPECT_LT(underflowFloat, minFloat);
141 double minFloat = -maxFloat; 141
142 double overflowFloat = maxFloat * 1.1; 142 EXPECT_EQ(maxFloat, clampTo<float>(maxFloat));
143 double underflowFloat = minFloat * 1.1; 143 EXPECT_EQ(minFloat, clampTo<float>(minFloat));
144 144
145 EXPECT_GT(overflowFloat, maxFloat); 145 EXPECT_EQ(maxFloat, clampTo<float>(overflowFloat));
146 EXPECT_LT(underflowFloat, minFloat); 146 EXPECT_EQ(minFloat, clampTo<float>(underflowFloat));
147 147
148 EXPECT_EQ(maxFloat, clampTo<float>(maxFloat)); 148 EXPECT_EQ(maxFloat, clampTo<float>(std::numeric_limits<float>::infinity()));
149 EXPECT_EQ(minFloat, clampTo<float>(minFloat)); 149 EXPECT_EQ(minFloat, clampTo<float>(-std::numeric_limits<float>::infinity()));
150 150 }
151 EXPECT_EQ(maxFloat, clampTo<float>(overflowFloat)); 151
152 EXPECT_EQ(minFloat, clampTo<float>(underflowFloat)); 152 TEST(MathExtrasTest, clampToDouble) {
153 153 EXPECT_EQ(0.0, clampTo<double>(0));
154 EXPECT_EQ(maxFloat, clampTo<float>(std::numeric_limits<float>::infinity())); 154 EXPECT_EQ(0.0, clampTo<double>(0.0f));
155 EXPECT_EQ(minFloat, clampTo<float>(-std::numeric_limits<float>::infinity())) ; 155 EXPECT_EQ(0.0, clampTo<double>(0ULL));
156 } 156 EXPECT_EQ(3.5, clampTo<double>(std::numeric_limits<unsigned long long>::max(), 0.0, 3.5));
157 157 }
158 TEST(MathExtrasTest, clampToDouble) 158
159 { 159 TEST(MathExtrasText, clampToLongLongDouble) {
160 EXPECT_EQ(0.0, clampTo<double>(0)); 160 double overflowLL = static_cast<double>(std::numeric_limits<long long>::max()) * 2;
161 EXPECT_EQ(0.0, clampTo<double>(0.0f)); 161 EXPECT_EQ(std::numeric_limits<long long>::max(), clampTo<long long>(overflowLL ));
162 EXPECT_EQ(0.0, clampTo<double>(0ULL)); 162 EXPECT_EQ(std::numeric_limits<long long>::min(), clampTo<long long>(-overflowL L));
163 EXPECT_EQ(3.5, clampTo<double>(std::numeric_limits<unsigned long long>::max( ), 0.0, 3.5)); 163 }
164 } 164
165 165 TEST(MathExtrasText, clampToUnsignedLongLongDouble) {
166 TEST(MathExtrasText, clampToLongLongDouble) 166 double overflowULL = static_cast<double>(std::numeric_limits<unsigned long lon g>::max()) * 2;
167 { 167 EXPECT_EQ(std::numeric_limits<unsigned long long>::max(), clampTo<unsigned lon g long>(overflowULL));
168 double overflowLL = static_cast<double>(std::numeric_limits<long long>::max( )) * 2; 168 EXPECT_EQ(std::numeric_limits<unsigned long long>::min(), clampTo<unsigned lon g long>(-overflowULL));
169 EXPECT_EQ(std::numeric_limits<long long>::max(), clampTo<long long>(overflow LL)); 169 }
170 EXPECT_EQ(std::numeric_limits<long long>::min(), clampTo<long long>(-overflo wLL)); 170
171 } 171 TEST(MathExtrasTest, clampToUnsignedUnsignedLong) {
172 172 if (sizeof(unsigned long) == sizeof(unsigned))
173 TEST(MathExtrasText, clampToUnsignedLongLongDouble) 173 return;
174 { 174
175 double overflowULL = static_cast<double>(std::numeric_limits<unsigned long l ong>::max()) * 2; 175 unsigned long maxUnsigned = std::numeric_limits<unsigned>::max();
176 EXPECT_EQ(std::numeric_limits<unsigned long long>::max(), clampTo<unsigned l ong long>(overflowULL)); 176 unsigned long overflowUnsigned = maxUnsigned + 1;
177 EXPECT_EQ(std::numeric_limits<unsigned long long>::min(), clampTo<unsigned l ong long>(-overflowULL)); 177
178 } 178 EXPECT_GT(overflowUnsigned, maxUnsigned);
179 179
180 TEST(MathExtrasTest, clampToUnsignedUnsignedLong) 180 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(maxUnsigned));
181 { 181
182 if (sizeof(unsigned long) == sizeof(unsigned)) 182 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(overflowUnsigned));
183 return; 183 EXPECT_EQ(0u, clampTo<unsigned>(-1));
184 184 }
185 unsigned long maxUnsigned = std::numeric_limits<unsigned>::max(); 185
186 unsigned long overflowUnsigned = maxUnsigned + 1; 186 TEST(MathExtrasTest, clampToUnsignedUnsignedLongLong) {
187 187 unsigned long long maxUnsigned = std::numeric_limits<unsigned>::max();
188 EXPECT_GT(overflowUnsigned, maxUnsigned); 188 unsigned long long overflowUnsigned = maxUnsigned + 1;
189 189
190 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(maxUnsigned)); 190 EXPECT_GT(overflowUnsigned, maxUnsigned);
191 191
192 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(overflowUnsigned)); 192 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(maxUnsigned));
193 EXPECT_EQ(0u, clampTo<unsigned>(-1)); 193
194 } 194 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(overflowUnsigned));
195 195 EXPECT_EQ(0u, clampTo<unsigned>(-1));
196 TEST(MathExtrasTest, clampToUnsignedUnsignedLongLong) 196 }
197 { 197
198 unsigned long long maxUnsigned = std::numeric_limits<unsigned>::max(); 198 TEST(MathExtrasTest, clampToLongLongUnsignedLongLong) {
199 unsigned long long overflowUnsigned = maxUnsigned + 1; 199 long long maxLongLongLL = std::numeric_limits<long long>::max();
200 200 unsigned long long maxLongLongULL = maxLongLongLL;
201 EXPECT_GT(overflowUnsigned, maxUnsigned); 201 unsigned long long overflowLongLong = maxLongLongULL + 1;
202 202
203 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(maxUnsigned)); 203 EXPECT_GT(overflowLongLong, maxLongLongULL);
204 204
205 EXPECT_EQ(maxUnsigned, clampTo<unsigned>(overflowUnsigned)); 205 EXPECT_EQ(maxLongLongLL, clampTo<long long>(maxLongLongULL));
206 EXPECT_EQ(0u, clampTo<unsigned>(-1)); 206 EXPECT_EQ(maxLongLongLL - 1, clampTo<long long>(maxLongLongULL - 1));
207 } 207 EXPECT_EQ(maxLongLongLL, clampTo<long long>(overflowLongLong));
208 208
209 TEST(MathExtrasTest, clampToLongLongUnsignedLongLong) 209 EXPECT_EQ(-3LL, clampTo<long long>(2ULL, -5LL, -3LL));
210 { 210 }
211 long long maxLongLongLL = std::numeric_limits<long long>::max(); 211
212 unsigned long long maxLongLongULL = maxLongLongLL; 212 TEST(MathExtrasTest, clampToUnsignedLongLongInt) {
213 unsigned long long overflowLongLong = maxLongLongULL + 1; 213 EXPECT_EQ(0ULL, clampTo<unsigned long long>(-1));
214 214 EXPECT_EQ(0ULL, clampTo<unsigned long long>(0));
215 EXPECT_GT(overflowLongLong, maxLongLongULL); 215 EXPECT_EQ(1ULL, clampTo<unsigned long long>(1));
216 216 }
217 EXPECT_EQ(maxLongLongLL, clampTo<long long>(maxLongLongULL)); 217
218 EXPECT_EQ(maxLongLongLL - 1, clampTo<long long>(maxLongLongULL - 1)); 218 TEST(MathExtrasTest, clampToUnsignedLongLongUnsignedLongLong) {
219 EXPECT_EQ(maxLongLongLL, clampTo<long long>(overflowLongLong)); 219 EXPECT_EQ(0ULL, clampTo<unsigned long long>(0ULL));
220 220 EXPECT_EQ(1ULL, clampTo<unsigned long long>(0ULL, 1ULL, 2ULL));
221 EXPECT_EQ(-3LL, clampTo<long long>(2ULL, -5LL, -3LL)); 221 EXPECT_EQ(2ULL, clampTo<unsigned long long>(3ULL, 1ULL, 2ULL));
222 } 222 EXPECT_EQ(0xFFFFFFFFFFFFFFF5ULL, clampTo<unsigned long long>(0xFFFFFFFFFFFFFFF 5ULL));
223
224 TEST(MathExtrasTest, clampToUnsignedLongLongInt)
225 {
226 EXPECT_EQ(0ULL, clampTo<unsigned long long>(-1));
227 EXPECT_EQ(0ULL, clampTo<unsigned long long>(0));
228 EXPECT_EQ(1ULL, clampTo<unsigned long long>(1));
229 }
230
231 TEST(MathExtrasTest, clampToUnsignedLongLongUnsignedLongLong)
232 {
233 EXPECT_EQ(0ULL, clampTo<unsigned long long>(0ULL));
234 EXPECT_EQ(1ULL, clampTo<unsigned long long>(0ULL, 1ULL, 2ULL));
235 EXPECT_EQ(2ULL, clampTo<unsigned long long>(3ULL, 1ULL, 2ULL));
236 EXPECT_EQ(0xFFFFFFFFFFFFFFF5ULL, clampTo<unsigned long long>(0xFFFFFFFFFFFFF FF5ULL));
237 } 223 }
238 224
239 // Make sure that various +-inf cases are handled properly (they aren't 225 // Make sure that various +-inf cases are handled properly (they aren't
240 // by default on VS). 226 // by default on VS).
241 TEST(MathExtrasTest, infinityMath) 227 TEST(MathExtrasTest, infinityMath) {
242 { 228 double posInf = std::numeric_limits<double>::infinity();
243 double posInf = std::numeric_limits<double>::infinity(); 229 double negInf = -std::numeric_limits<double>::infinity();
244 double negInf = -std::numeric_limits<double>::infinity(); 230 double nan = std::numeric_limits<double>::quiet_NaN();
245 double nan = std::numeric_limits<double>::quiet_NaN(); 231
246 232 EXPECT_EQ(M_PI_4, atan2(posInf, posInf));
247 EXPECT_EQ(M_PI_4, atan2(posInf, posInf)); 233 EXPECT_EQ(3.0 * M_PI_4, atan2(posInf, negInf));
248 EXPECT_EQ(3.0 * M_PI_4, atan2(posInf, negInf)); 234 EXPECT_EQ(-M_PI_4, atan2(negInf, posInf));
249 EXPECT_EQ(-M_PI_4, atan2(negInf, posInf)); 235 EXPECT_EQ(-3.0 * M_PI_4, atan2(negInf, negInf));
250 EXPECT_EQ(-3.0 * M_PI_4, atan2(negInf, negInf)); 236
251 237 EXPECT_EQ(0.0, fmod(0.0, posInf));
252 EXPECT_EQ(0.0, fmod(0.0, posInf)); 238 EXPECT_EQ(7.0, fmod(7.0, posInf));
253 EXPECT_EQ(7.0, fmod(7.0, posInf)); 239 EXPECT_EQ(-7.0, fmod(-7.0, posInf));
254 EXPECT_EQ(-7.0, fmod(-7.0, posInf)); 240 EXPECT_EQ(0.0, fmod(0.0, negInf));
255 EXPECT_EQ(0.0, fmod(0.0, negInf)); 241 EXPECT_EQ(7.0, fmod(7.0, negInf));
256 EXPECT_EQ(7.0, fmod(7.0, negInf)); 242 EXPECT_EQ(-7.0, fmod(-7.0, negInf));
257 EXPECT_EQ(-7.0, fmod(-7.0, negInf)); 243
258 244 EXPECT_EQ(1.0, pow(5.0, 0.0));
259 EXPECT_EQ(1.0, pow(5.0, 0.0)); 245 EXPECT_EQ(1.0, pow(-5.0, 0.0));
260 EXPECT_EQ(1.0, pow(-5.0, 0.0)); 246 EXPECT_EQ(1.0, pow(nan, 0.0));
261 EXPECT_EQ(1.0, pow(nan, 0.0)); 247 }
262 } 248
263 249 } // namespace WTF
264 } // namespace WTF
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/wtf/MathExtras.h ('k') | third_party/WebKit/Source/wtf/NonCopyingSort.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698