/*
- * Copyright (c) 2014 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2015 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.
*
*/
+// CLASS HEADER
+#include "dali-test-suite-utils.h"
+
+// EXTERNAL INCLUDES
+#include <ostream>
+
// INTERNAL INCLUDES
#include <dali/public-api/dali-core.h>
-#include <stdarg.h>
-
-#include "dali-test-suite-utils.h"
using namespace Dali;
va_end(arg);
}
-/**
- * DALI_TEST_CHECK is a wrapper for tet_result.
- * If the condition evaluates to false, then the function & line number is printed.
- * @param[in] The boolean expression to check
- */
-#define DALI_TEST_CHECK(condition) \
-if ( (condition) ) \
-{ \
- tet_result(TET_PASS); \
-} \
-else \
-{ \
- fprintf(stderr, "%s Failed in %s at line %d\n", __PRETTY_FUNCTION__, __FILE__, __LINE__); \
- tet_result(TET_FAIL); \
-}
-
bool operator==(TimePeriod a, TimePeriod b)
{
return Equals(a.durationSeconds, b.durationSeconds) && Equals(a.delaySeconds, b.delaySeconds) ;
}
-std::ostream& operator<< (std::ostream& o, const TimePeriod value)
+std::ostream& operator<<( std::ostream& ostream, TimePeriod value )
{
- return o << "( Duration:" << value.durationSeconds << " Delay:" << value.delaySeconds << ")";
+ return ostream << "( Duration:" << value.durationSeconds << " Delay:" << value.delaySeconds << ")";
+}
+
+std::ostream& operator<<( std::ostream& ostream, Radian angle )
+{
+ ostream << angle.radian;
+ return ostream;
+}
+
+std::ostream& operator<<( std::ostream& ostream, Degree angle )
+{
+ ostream << angle.degree;
+ return ostream;
+}
+
+void DALI_TEST_EQUALS( const BaseHandle& baseHandle1, const BaseHandle& baseHandle2, const char* location )
+{
+ DALI_TEST_EQUALS< const BaseHandle& >( baseHandle1, baseHandle2, location );
+}
+
+void DALI_TEST_EQUALS( const size_t value1, const unsigned int value2, const char* location )
+{
+ DALI_TEST_EQUALS< unsigned int>( ( unsigned int )( value1 ), value2, location );
+}
+
+void DALI_TEST_EQUALS( const unsigned int value1, const size_t value2, const char* location )
+{
+ DALI_TEST_EQUALS< unsigned int >( value1, ( unsigned int )( value2 ), location );
}
void DALI_TEST_EQUALS( const Matrix3& matrix1, const Matrix3& matrix2, const char* location)
for (int i=0;i<9;++i)
{
- equivalent &= (m1[i] != m2[i]);
+ if( ! (fabsf(m1[i] - m2[i])< GetRangedEpsilon(m1[i], m2[i])) )
+ {
+ equivalent = false;
+ }
}
- if (!equivalent)
+ if( !equivalent )
{
fprintf(stderr, "%s, checking\n"
"(%f, %f, %f) (%f, %f, %f)\n"
DALI_TEST_EQUALS(str1, str2.c_str(), location);
}
-
-/**
- * Test whether one unsigned integer value is greater than another.
- * Test succeeds if value1 > value2
- * @param[in] value1 The first value
- * @param[in] value2 The second value
- * @param[in] location The TEST_LOCATION macro should be used here
- */
-void DALI_TEST_GREATER(unsigned int value1, unsigned int value2, const char* location)
-{
- if (!(value1 > value2))
- {
- fprintf(stderr, "%s, checking %d > %d\n", location, value1, value2);
- tet_result(TET_FAIL);
- }
- else
- {
- tet_result(TET_PASS);
- }
-}
-
-/**
- * Test whether one float value is greater than another.
- * Test succeeds if value1 > value2
- * @param[in] value1 The first value
- * @param[in] value2 The second value
- * @param[in] location The TEST_LOCATION macro should be used here
- */
-void DALI_TEST_GREATER( float value1, float value2, const char* location)
-{
- if (!(value1 > value2))
- {
- fprintf(stderr, "%s, checking %f > %f\n", location, value1, value2);
- tet_result(TET_FAIL);
- }
- else
- {
- tet_result(TET_PASS);
- }
-}
-
void DALI_TEST_ASSERT( DaliException& e, std::string conditionSubString, const char* location )
{
if( NULL == strstr( e.condition, conditionSubString.c_str() ) )