init push
This commit is contained in:
383
unittest/sql/engine/expr/ob_expr_mod_test.cpp
Normal file
383
unittest/sql/engine/expr/ob_expr_mod_test.cpp
Normal file
@ -0,0 +1,383 @@
|
||||
/**
|
||||
* Copyright (c) 2021 OceanBase
|
||||
* OceanBase CE is licensed under Mulan PubL v2.
|
||||
* You can use this software according to the terms and conditions of the Mulan PubL v2.
|
||||
* You may obtain a copy of Mulan PubL v2 at:
|
||||
* http://license.coscl.org.cn/MulanPubL-2.0
|
||||
* THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
* EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
* MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
* See the Mulan PubL v2 for more details.
|
||||
*/
|
||||
|
||||
#include <gtest/gtest.h>
|
||||
#include "sql/engine/expr/ob_expr_mod.h"
|
||||
#include "ob_expr_test_utils.h"
|
||||
|
||||
using namespace oceanbase::common;
|
||||
using namespace oceanbase::sql;
|
||||
class ObExprModTest : public ::testing::Test {
|
||||
public:
|
||||
ObExprModTest();
|
||||
virtual ~ObExprModTest();
|
||||
virtual void SetUp();
|
||||
virtual void TearDown();
|
||||
|
||||
private:
|
||||
// disallow copy
|
||||
ObExprModTest(const ObExprModTest& other);
|
||||
ObExprModTest& operator=(const ObExprModTest& other);
|
||||
|
||||
protected:
|
||||
// data members
|
||||
};
|
||||
|
||||
ObExprModTest::ObExprModTest()
|
||||
{}
|
||||
|
||||
ObExprModTest::~ObExprModTest()
|
||||
{}
|
||||
|
||||
void ObExprModTest::SetUp()
|
||||
{}
|
||||
|
||||
void ObExprModTest::TearDown()
|
||||
{}
|
||||
|
||||
/*
|
||||
#define R(t1, v1, t2, v2, res) ARITH_EXPECT(ObExprMod, &buf, calc_result2, t1, v1, t2, v2, res)
|
||||
#define E(t1, v1, t2, v2, res) ARITH_ERROR(ObExprMod, &buf, calc_result2, t1, v1, t2, v2, res)
|
||||
#define T(t1, t2, res) ARITH_EXPECT_TYPE(ObExprMod, calc_result_type2, t1, t2, res)
|
||||
#define TE(t1, t2, res) ARITH_EXPECT_TYPE_WITH_ROW(ObExprMod, calc_result_type2, t1, t2, res)
|
||||
*/
|
||||
#define R(t1, v1, t2, v2, rt, res) ARITH_EXPECT_OBJ(ObExprMod, &buf, calc, t1, v1, t2, v2, rt, res)
|
||||
|
||||
TEST_F(ObExprModTest, int_int_test)
|
||||
{
|
||||
ObMalloc buf;
|
||||
R(int, 5, int, 12, int, 5);
|
||||
R(int, 12, int, 5, int, 2);
|
||||
R(int, -5, int, 12, int, -5);
|
||||
R(int, 12, int, -5, int, 2);
|
||||
R(int, 5, int, -12, int, 5);
|
||||
R(int, -12, int, 5, int, -2);
|
||||
R(int, -5, int, -12, int, -5);
|
||||
R(int, -12, int, -5, int, -2);
|
||||
R(int, INT64_MAX, int, INT64_MIN, int, INT64_MAX);
|
||||
R(int, INT64_MIN, int, INT64_MAX, int, -1);
|
||||
}
|
||||
|
||||
TEST_F(ObExprModTest, uint_uint_test)
|
||||
{
|
||||
ObMalloc buf;
|
||||
R(uint64, 5, uint64, 12, int, 5);
|
||||
R(uint64, 12, uint64, 5, int, 2);
|
||||
R(uint64, UINT64_MAX - 1, uint64, UINT64_MAX, uint64, UINT64_MAX - 1);
|
||||
R(uint64, UINT64_MAX, uint64, UINT64_MAX - 1, uint64, 1);
|
||||
}
|
||||
|
||||
TEST_F(ObExprModTest, int_uint_test)
|
||||
{
|
||||
ObMalloc buf;
|
||||
R(int, 5, uint64, 12, int, 5);
|
||||
R(uint64, 12, int, 5, int, 2);
|
||||
R(int, -5, uint64, 12, int, -5);
|
||||
R(uint64, 12, int, -5, int, 2);
|
||||
R(int, 12, uint64, 5, int, 2);
|
||||
R(uint64, 5, int, 12, int, 5);
|
||||
R(int, -12, uint64, 5, int, -2);
|
||||
R(uint64, 5, int, -12, int, 5);
|
||||
R(int, INT64_MAX, uint64, UINT64_MAX, int, INT64_MAX);
|
||||
R(uint64, UINT64_MAX, int, INT64_MAX, int, 1);
|
||||
R(int, INT64_MIN, uint64, UINT64_MAX, int, INT64_MIN);
|
||||
R(uint64, UINT64_MAX, int, INT64_MIN, int, INT64_MAX);
|
||||
}
|
||||
|
||||
TEST_F(ObExprModTest, float_test)
|
||||
{
|
||||
ObMalloc buf;
|
||||
R(float, 1.0, int, 2, double, 1.0);
|
||||
R(float, 2.0, float, 3.0, double, 2.0);
|
||||
R(float, 3.0, double, 4.0, double, 3.0);
|
||||
R(float, 4.0, double, -3.0, double, 1.0);
|
||||
}
|
||||
|
||||
TEST_F(ObExprModTest, float_double)
|
||||
{
|
||||
ObMalloc buf;
|
||||
R(float, 1.0, int, 2, double, 1.0);
|
||||
R(float, 2.0, float, 3.0, double, 2.0);
|
||||
R(float, 3.0, double, 4.0, double, 3.0);
|
||||
R(float, 4.0, double, -3.0, double, 1.0);
|
||||
R(double, 3.0, double, 4.0, double, 3.0);
|
||||
R(double, 4.0, double, -3.0, double, 1.0);
|
||||
R(double, -4.2, double, -3.0, double, -1.2);
|
||||
}
|
||||
|
||||
TEST_F(ObExprModTest, varchar)
|
||||
{
|
||||
ObMalloc buf;
|
||||
|
||||
R(varchar, "1", int, 2, double, 1.0);
|
||||
R(varchar, "4.2", float, 3.0, double, 1.2);
|
||||
R(varchar, "-2.12345", float, 3.0, double, -2.12345);
|
||||
R(varchar, "30.5", double, 4.5, double, 3.5);
|
||||
R(varchar, "9.12345", double, 4.0, double, 1.12345);
|
||||
}
|
||||
|
||||
TEST_F(ObExprModTest, mod_zero_test)
|
||||
{
|
||||
ObMalloc buf;
|
||||
}
|
||||
|
||||
/*
|
||||
TEST_F(ObExprModTest, result_test)
|
||||
{
|
||||
//ObNullType
|
||||
ObExprStringBuf buf;
|
||||
R(null, 0, null, 1, ObNullType);
|
||||
R(null, 0, int, 2, ObNullType);
|
||||
R(null, 0, float, 3.0, ObNullType);
|
||||
R(null, 0, double, 4.0, ObNullType);
|
||||
R(null, 0, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(null, 0, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(null, 0, varchar, "7", ObNullType);
|
||||
R(null, 0, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(null, 0, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(null, 0, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(null, 0, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(null, 0, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObIntType
|
||||
R(int, 0, null, 1, ObNullType);
|
||||
R(int, 1, int, 2, 1);
|
||||
R(int, 2, float, 3.0, 2.0);
|
||||
R(int, 20, float, 3.0, 2.0);
|
||||
R(int, 20, float, float(3.9), 0.5);
|
||||
R(int, 20, float, float(-3.9), 0.5);
|
||||
R(int, -20, float, float(-3.9), -0.5);
|
||||
R(int, 3, double, 4.0, 3.0);
|
||||
R(int, 4, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 5, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 6, varchar, "7", 6.0);
|
||||
R(int, 6, varchar, "a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(int, 6, varchar, "07a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(int, 7, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 18, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 19, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 10, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 11, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(int, 11, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObFloatType
|
||||
R(float, 0.0, null, 1, ObNullType);
|
||||
R(float, 1.0, int, 2, 1.0);
|
||||
R(float, 2.0, float, 3.0, 2.0);
|
||||
R(float, 3.0, double, 4.0, 3.0);
|
||||
R(float, 4.0, double, -3.0, 1.0);
|
||||
R(float, float(-4.2), double, -3.0, -1.2);
|
||||
R(float, 4.0, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, 5.0, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, float(6.1), varchar, "7", 6.1);
|
||||
R(float, float(6.2), varchar, "a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(float, float(6.3), varchar, "06a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(float, 6.0, varchar, "-0.7a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(float, 7.0, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, 8.0, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, 9.0, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, 10.0, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, 11.0, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(float, 11.0, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObDoubleType
|
||||
R(double, 0.0, null, 1, ObNullType);
|
||||
R(double, 1.0, int, 2, 1.0);
|
||||
R(double, 2.0, float, 3.0, 2.0);
|
||||
R(double, 12.4, float, float(3.6), 1.6);
|
||||
R(double, 3.0, double, 4.0, 3.0);
|
||||
R(double, 4.0, double, -3.0, 1.0);
|
||||
R(double, -4.2, double, -3.0, -1.2);
|
||||
R(double, 4.0, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 5.0, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 6.1, varchar, "7", 6.1);
|
||||
R(double, 6.2, varchar, "a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(double, 6.3, varchar, "06a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(double, 6.0, varchar, "-0.7a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(double, 7.0, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 8.0, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 9.0, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 10.0, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 11.0, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(double, 11.0, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObDateTimeType
|
||||
R(datetime, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 1, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 2, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 20, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 3, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 4, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 5, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 6, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 6, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 6, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 7, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 18, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 19, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 10, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 11, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(datetime, 11, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObPreciseDateTimeType
|
||||
R(precise_datetime, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 1, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 2, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 20, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 3, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 4, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 5, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 6, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 6, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 6, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 7, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 18, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 19, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 10, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 11, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(precise_datetime, 11, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
|
||||
//ObVarcharType
|
||||
R(varchar, "0", null, 1, ObNullType);
|
||||
R(varchar, "1", int, 2, 1.0);
|
||||
R(varchar, "4.2", float, 3.0, 1.2);
|
||||
R(varchar, "-2.12345", float, 3.0, -2.12345);
|
||||
R(varchar, "30.5", double, 4.5, 3.5);
|
||||
R(varchar, "9.12345", double, 4.0, 1.12345);
|
||||
R(varchar, "hello", datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "6hello", precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "hello6", varchar, "7", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(varchar, "df", varchar, "a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(varchar, "6", varchar, "07a", OB_ERR_CAST_VARCHAR_TO_NUMBER);
|
||||
R(varchar, "-7", unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "-8", ctime, -129, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "-1239", mtime, -34, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "10", ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "11he", bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(varchar, "11", bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObCreateTimeType
|
||||
R(ctime, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 1, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 2, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 20, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 3, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 4, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 5, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 6, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 6, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 6, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 7, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 18, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 19, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 10, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 11, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ctime, 11, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObModifyTimeType
|
||||
R(mtime, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 1, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 2, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 20, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 3, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 4, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 5, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 6, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 6, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 6, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 7, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 18, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 19, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 10, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 11, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(mtime, 11, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObBoolType
|
||||
R(bool, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 1, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 1, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, float, float(0.3), OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 1, float, float(0.3), OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, -2, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 4, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 5, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 6, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 6, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 6, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 7, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 8, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 0, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 9, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 10, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 11, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(bool, 11, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, ObNullType); decimal not supported
|
||||
|
||||
//ObExtendType
|
||||
R(ext, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(ext, 0, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
|
||||
//ObUnknownType
|
||||
R(unknown, 0, null, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, int, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, float, 3.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, double, 4.0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, datetime, 5, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, precise_datetime, 6, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, varchar, "7", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, varchar, "a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, varchar, "07a", OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, unknown, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, ctime, 9, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, mtime, 10, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, ext, 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, bool, 1, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
R(unknown, 0, bool, 0, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
//R(null, 0, , 2, OB_ERR_INVALID_TYPE_FOR_OP);
|
||||
}
|
||||
*/
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
return RUN_ALL_TESTS();
|
||||
}
|
||||
Reference in New Issue
Block a user