From 2aa9b6947efebf14c84aec711455dfcc1a824b1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9a=20Saviot?= Date: Wed, 25 Apr 2018 13:44:26 +0200 Subject: [PATCH] [kandinsky] Add test cases for KDRect::differencedWith Change-Id: I27371f94e590cb75712154b47efe4db27d0a082d --- kandinsky/test/rect.cpp | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/kandinsky/test/rect.cpp b/kandinsky/test/rect.cpp index 284213a55..198adac2a 100644 --- a/kandinsky/test/rect.cpp +++ b/kandinsky/test/rect.cpp @@ -58,3 +58,45 @@ QUIZ_CASE(kandinsky_rect_empty_union) { assert(t.width() == a.width()); assert(t.height() == a.height()); } + +QUIZ_CASE(kandinsky_rect_difference) { + KDRect a(-1, 0, 11, 2); + KDRect b(-4, -3, 4, 7); + KDRect c(3, -2, 1, 5); + KDRect d(7, -3, 5, 7); + KDRect e(-2, -1, 13, 5); + KDRect f(2, -4, 3, 3); + + KDRect t = e.differencedWith(a); + assert(t == e); + + t = a.differencedWith(e); + assert(t == KDRectZero); + + t = f.differencedWith(d); + assert(t == f); + + t = f.differencedWith(e); + assert(t == f); + + t = b.differencedWith(e); + assert(t == b); + + t = c.differencedWith(f); + assert(t == KDRect(3, -1, 1, 4)); + + t = c.differencedWith(a); + assert(t == c); + + t = c.differencedWith(e); + assert(t == KDRect(3, -2, 1, 1)); + + t = a.differencedWith(b); + assert(t == KDRect(0, 0, 10, 2)); + + t = a.differencedWith(c); + assert(t == a); + + t = a.differencedWith(d); + assert(t == KDRect(-1, 0, 8, 2)); +}