diff options
-rw-r--r-- | core/fxcrt/fx_coordinates.cpp | 6 | ||||
-rw-r--r-- | core/fxcrt/fx_coordinates.h | 10 | ||||
-rw-r--r-- | core/fxcrt/fx_coordinates_unittest.cpp | 37 |
3 files changed, 46 insertions, 7 deletions
diff --git a/core/fxcrt/fx_coordinates.cpp b/core/fxcrt/fx_coordinates.cpp index 69fedb5522..d25a754d7a 100644 --- a/core/fxcrt/fx_coordinates.cpp +++ b/core/fxcrt/fx_coordinates.cpp @@ -201,11 +201,11 @@ FX_RECT CFX_FloatRect::ToRoundedFxRect() const { #ifndef NDEBUG std::ostream& operator<<(std::ostream& os, const CFX_FloatRect& rect) { - os << "rect[" << rect.Width() << "x" << rect.Height() << " (" << rect.left - << ", " << rect.bottom << ")]"; + os << "rect[w " << rect.Width() << " x h " << rect.Height() << " (left " + << rect.left << ", bot " << rect.bottom << ")]"; return os; } -#endif +#endif // NDEBUG CFX_Matrix CFX_Matrix::GetInverse() const { CFX_Matrix inverse; diff --git a/core/fxcrt/fx_coordinates.h b/core/fxcrt/fx_coordinates.h index 3d09652b13..2e8c1abca3 100644 --- a/core/fxcrt/fx_coordinates.h +++ b/core/fxcrt/fx_coordinates.h @@ -581,6 +581,16 @@ class CFX_RTemplate { using CFX_Rect = CFX_RTemplate<int32_t>; using CFX_RectF = CFX_RTemplate<float>; +#ifndef NDEBUG +template <class BaseType> +std::ostream& operator<<(std::ostream& os, + const CFX_RTemplate<BaseType>& rect) { + os << "rect[w " << rect.Width() << " x h " << rect.Height() << " (left " + << rect.left << ", top " << rect.top << ")]"; + return os; +} +#endif // NDEBUG + // The matrix is of the form: // | a b 0 | // | c d 0 | diff --git a/core/fxcrt/fx_coordinates_unittest.cpp b/core/fxcrt/fx_coordinates_unittest.cpp index 15ee661509..7c25d0da28 100644 --- a/core/fxcrt/fx_coordinates_unittest.cpp +++ b/core/fxcrt/fx_coordinates_unittest.cpp @@ -197,19 +197,48 @@ TEST(CFX_FloatRect, Print) { std::ostringstream os; CFX_FloatRect rect; os << rect; - EXPECT_STREQ("rect[0x0 (0, 0)]", os.str().c_str()); + EXPECT_STREQ("rect[w 0 x h 0 (left 0, bot 0)]", os.str().c_str()); os.str(""); rect = CFX_FloatRect(10, 20, 14, 23); os << rect; - EXPECT_STREQ("rect[4x3 (10, 20)]", os.str().c_str()); + EXPECT_STREQ("rect[w 4 x h 3 (left 10, bot 20)]", os.str().c_str()); os.str(""); rect = CFX_FloatRect(10.5, 20.5, 14.75, 23.75); os << rect; - EXPECT_STREQ("rect[4.25x3.25 (10.5, 20.5)]", os.str().c_str()); + EXPECT_STREQ("rect[w 4.25 x h 3.25 (left 10.5, bot 20.5)]", os.str().c_str()); } -#endif + +TEST(CFX_Rect, Print) { + std::ostringstream os; + CFX_Rect rect; + os << rect; + EXPECT_STREQ("rect[w 0 x h 0 (left 0, top 0)]", os.str().c_str()); + + os.str(""); + rect = CFX_Rect(10, 20, 4, 3); + os << rect; + EXPECT_STREQ("rect[w 4 x h 3 (left 10, top 20)]", os.str().c_str()); +} + +TEST(CFX_RectF, Print) { + std::ostringstream os; + CFX_RectF rect; + os << rect; + EXPECT_STREQ("rect[w 0 x h 0 (left 0, top 0)]", os.str().c_str()); + + os.str(""); + rect = CFX_RectF(10, 20, 4, 3); + os << rect; + EXPECT_STREQ("rect[w 4 x h 3 (left 10, top 20)]", os.str().c_str()); + + os.str(""); + rect = CFX_RectF(10.5, 20.5, 4.25, 3.25); + os << rect; + EXPECT_STREQ("rect[w 4.25 x h 3.25 (left 10.5, top 20.5)]", os.str().c_str()); +} +#endif // NDEBUG TEST(CFX_Matrix, ReverseIdentity) { CFX_Matrix m; |