X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Fdali-test-suite-utils.h;h=79d422b15aacbef6044ce707045404885da801c9;hb=8e7cfd0c114bf778287cc6e67d0f42f3c866e205;hp=7f81872e1388101410e950f9cb6b514de80fd00e;hpb=46e8848bda5e3287a80ee9ce020166ad55a52ec0;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.h b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.h index 7f81872..79d422b 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.h +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/dali-test-suite-utils.h @@ -2,7 +2,7 @@ #define __DALI_TEST_SUITE_UTILS_H__ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2017 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -162,6 +162,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, return false; } + bool result = false; switch(type) { case Property::BOOLEAN: @@ -169,7 +170,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, bool a, b; q1.Get(a); q2.Get(b); - return a == b; + result = a == b; break; } case Property::INTEGER: @@ -177,7 +178,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, int a, b; q1.Get(a); q2.Get(b); - return a == b; + result = a == b; break; } case Property::FLOAT: @@ -185,7 +186,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, float a, b; q1.Get(a); q2.Get(b); - return CompareType(a, b, epsilon); + result = CompareType(a, b, epsilon); break; } case Property::VECTOR2: @@ -193,7 +194,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, Vector2 a, b; q1.Get(a); q2.Get(b); - return CompareType(a, b, epsilon); + result = CompareType(a, b, epsilon); break; } case Property::VECTOR3: @@ -201,7 +202,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, Vector3 a, b; q1.Get(a); q2.Get(b); - return CompareType(a, b, epsilon); + result = CompareType(a, b, epsilon); break; } case Property::RECTANGLE: @@ -210,7 +211,7 @@ inline bool CompareType(Property::Value q1, Property::Value q2, Vector4 a, b; q1.Get(a); q2.Get(b); - return CompareType(a, b, epsilon); + result = CompareType(a, b, epsilon); break; } case Property::ROTATION: @@ -218,14 +219,28 @@ inline bool CompareType(Property::Value q1, Property::Value q2, Quaternion a, b; q1.Get(a); q2.Get(b); - return CompareType(a, b, epsilon); + result = CompareType(a, b, epsilon); + break; + } + case Property::MATRIX: + case Property::MATRIX3: + case Property::STRING: + case Property::ARRAY: + case Property::MAP: + { + //TODO: Implement this? + DALI_ASSERT_ALWAYS( 0 && "Not implemented"); + result = false; + break; + } + case Property::NONE: + { + result = false; break; } - default: - return false; } - return false; + return result; } @@ -499,4 +514,48 @@ struct DefaultFunctionCoverage BufferImage CreateBufferImage(); BufferImage CreateBufferImage(int width, int height, const Vector4& color); +// Prepare a resource image to be loaded. Should be called before creating the ResourceImage +void PrepareResourceImage( TestApplication& application, unsigned int imageWidth, unsigned int imageHeight, Pixel::Format pixelFormat ); + +// Test namespace to prevent pollution of Dali namespace, add Test helper functions here +namespace Test +{ +/** + * @brief + * + * Helper to check object destruction occurred + * 1) In main part of code create an ObjectDestructionTracker + * 2) Within sub section of main create object Actor test and call Start with Actor to test for destruction + * 3) Perform code which is expected to destroy Actor + * 4) Back in main part of code use IsDestroyed() to test if Actor was destroyed + */ +class ObjectDestructionTracker : public ConnectionTracker +{ +public: + + /** + * @brief Call in main part of code + */ + ObjectDestructionTracker(); + + /** + * @brief Call in sub bock of code where the Actor being checked is still alive. + * + * @param[in] actor Actor to be checked for destruction + */ + void Start( Actor actor ); + + /** + * @brief Call to check if Actor alive or destroyed. + * + * @return bool true if Actor was destroyed + */ + bool IsDestroyed(); + +private: + bool mRefObjectDestroyed; +}; + +} // namespace Test + #endif // __DALI_TEST_SUITE_UTILS_H__