WebKit Bugzilla
Attachment 361589 Details for
Bug 194462
: Add more more test for clampTo<>()
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-194462-20190208201345.patch (text/plain), 3.00 KB, created by
Benjamin Poulain
on 2019-02-08 20:13:45 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Benjamin Poulain
Created:
2019-02-08 20:13:45 PST
Size:
3.00 KB
patch
obsolete
>Subversion Revision: 241209 >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 03c4758dd7a8d94a759290288f2689960b25a1a4..1ebf90998840efbd75bcc6332bdfe54043993e9f 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,17 @@ >+2019-02-08 Benjamin Poulain <benjamin@webkit.org> >+ >+ Add more tests for clampTo<>() >+ https://bugs.webkit.org/show_bug.cgi?id=194462 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Darin suggested to test the very last floating point number >+ at the boundaries when truncating to integer. >+ I added test for max/min and max-1/min-1. >+ >+ * TestWebKitAPI/Tests/WTF/MathExtras.cpp: >+ (TestWebKitAPI::TEST): >+ > 2019-02-08 Jonathan Bedard <jbedard@apple.com> > > webkitpy: CrashLogs.find_all_logs may return a string or a dictionary >diff --git a/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp b/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp >index c74e3c9e5474f69897e94612595475c2d6e3bd2e..1280d8eceb5cf72ef6cc406a3a3a2e74b1c5171c 100644 >--- a/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp >+++ b/Tools/TestWebKitAPI/Tests/WTF/MathExtras.cpp >@@ -318,6 +318,25 @@ TEST(WTF, clampFloatToInt) > EXPECT_EQ(clampTo<int32_t>(static_cast<double>(9007199254740991)), std::numeric_limits<int32_t>::max()); > EXPECT_EQ(clampTo<int32_t>(static_cast<double>(9007199254740992)), std::numeric_limits<int32_t>::max()); > EXPECT_EQ(clampTo<int32_t>(static_cast<double>(9007199254740993)), std::numeric_limits<int32_t>::max()); >+ >+ // Test the double at the edge of max/min and max-1/min+1. >+ double intMax = static_cast<double>(std::numeric_limits<int32_t>::max()); >+ EXPECT_EQ(clampTo<int32_t>(intMax), std::numeric_limits<int32_t>::max()); >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMax, 0)), std::numeric_limits<int32_t>::max() - 1); >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMax, std::numeric_limits<double>::max())), std::numeric_limits<int32_t>::max()); >+ >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMax - 1., 0)), std::numeric_limits<int32_t>::max() - 2); >+ EXPECT_EQ(clampTo<int32_t>(intMax - 1), std::numeric_limits<int32_t>::max() - 1); >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMax - 1., std::numeric_limits<double>::max())), std::numeric_limits<int32_t>::max() - 1); >+ >+ double intMin = static_cast<double>(std::numeric_limits<int32_t>::min()); >+ EXPECT_EQ(clampTo<int32_t>(intMin), std::numeric_limits<int32_t>::min()); >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMin, 0)), std::numeric_limits<int32_t>::min() + 1); >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMin, -std::numeric_limits<double>::max())), std::numeric_limits<int32_t>::min()); >+ >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMin + 1, 0)), std::numeric_limits<int32_t>::min() + 2); >+ EXPECT_EQ(clampTo<int32_t>(intMin + 1), std::numeric_limits<int32_t>::min() + 1); >+ EXPECT_EQ(clampTo<int32_t>(std::nextafter(intMin + 1, -std::numeric_limits<double>::max())), std::numeric_limits<int32_t>::min() + 1); > } > > template<typename TargetType, typename SourceType>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 194462
:
361555
| 361589