patch 4.0
This commit is contained in:
@ -23,43 +23,50 @@ using namespace share::schema;
|
||||
|
||||
#define OK(value) ASSERT_EQ(OB_SUCCESS, (value))
|
||||
|
||||
class TestSqlParameterization : public ::testing::Test {
|
||||
public:
|
||||
TestSqlParameterization();
|
||||
virtual ~TestSqlParameterization();
|
||||
virtual void SetUp();
|
||||
virtual void TearDown();
|
||||
|
||||
private:
|
||||
// disallow copy
|
||||
TestSqlParameterization(const TestSqlParameterization& other);
|
||||
TestSqlParameterization& operator=(const TestSqlParameterization& other);
|
||||
|
||||
protected:
|
||||
// data members
|
||||
class TestSqlParameterization: public ::testing::Test
|
||||
{
|
||||
public:
|
||||
TestSqlParameterization();
|
||||
virtual ~TestSqlParameterization();
|
||||
virtual void SetUp();
|
||||
virtual void TearDown();
|
||||
private:
|
||||
// disallow copy
|
||||
TestSqlParameterization(const TestSqlParameterization &other);
|
||||
TestSqlParameterization& operator=(const TestSqlParameterization &other);
|
||||
protected:
|
||||
// data members
|
||||
};
|
||||
|
||||
TestSqlParameterization::TestSqlParameterization()
|
||||
{}
|
||||
{
|
||||
}
|
||||
|
||||
TestSqlParameterization::~TestSqlParameterization()
|
||||
{}
|
||||
{
|
||||
}
|
||||
|
||||
void TestSqlParameterization::SetUp()
|
||||
{}
|
||||
{
|
||||
}
|
||||
|
||||
void TestSqlParameterization::TearDown()
|
||||
{}
|
||||
{
|
||||
}
|
||||
|
||||
TEST_F(TestSqlParameterization, parameterize_sql)
|
||||
{
|
||||
int ret = OB_SUCCESS;
|
||||
ObArenaAllocator allocator(0);
|
||||
ObString stmt = ObString::make_string("select * from t1 where c1 = 3 group by 2 order by 1");
|
||||
ObSEArray<const ObPCParam*, OB_PC_NOT_PARAM_COUNT> not_params;
|
||||
ObSEArray<const ObPCParam *, OB_PC_NOT_PARAM_COUNT> not_params;
|
||||
ObFastParserResult fp_result;
|
||||
if (OB_FAIL(ObSqlParameterization::fast_parser(
|
||||
allocator, SMO_DEFAULT, ObCharset::get_system_collation(), stmt, false, fp_result))) {
|
||||
if (OB_FAIL(ObSqlParameterization::fast_parser(allocator,
|
||||
SMO_DEFAULT,
|
||||
ObCharset::get_system_collation(),
|
||||
stmt,
|
||||
false,
|
||||
fp_result))) {
|
||||
SQL_PC_LOG(WARN, "fail to fast_parser", K(stmt));
|
||||
}
|
||||
|
||||
@ -68,20 +75,20 @@ TEST_F(TestSqlParameterization, parameterize_sql)
|
||||
ASSERT_EQ(3, fp_result.raw_params_.at(0)->node_->value_);
|
||||
ASSERT_EQ(2, fp_result.raw_params_.at(1)->node_->value_);
|
||||
ASSERT_EQ(1, fp_result.raw_params_.at(2)->node_->value_);
|
||||
/* printf("no_param_sql: %s\n", fp_result.key_.ptr());*/
|
||||
// for (int64_t i = 0; i < fp_result.raw_params_.count(); i++) {
|
||||
// ParseNode *param = fp_result.raw_params_.at(i)->node_;
|
||||
// printf(" param_%ld: type:%d; value:%ld, str_value:%s, raw_text:%s, pos_:%ld\n",
|
||||
// i, param->type_,
|
||||
// param->value_,
|
||||
// param->str_value_,
|
||||
// param->raw_text_,
|
||||
// param->pos_);
|
||||
/* printf("no_param_sql: %s\n", fp_result.key_.ptr());*/
|
||||
//for (int64_t i = 0; i < fp_result.raw_params_.count(); i++) {
|
||||
//ParseNode *param = fp_result.raw_params_.at(i)->node_;
|
||||
//printf(" param_%ld: type:%d; value:%ld, str_value:%s, raw_text:%s, pos_:%ld\n",
|
||||
//i, param->type_,
|
||||
//param->value_,
|
||||
//param->str_value_,
|
||||
//param->raw_text_,
|
||||
//param->pos_);
|
||||
/*}*/
|
||||
}
|
||||
|
||||
int main(int argc, char** argv)
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
::testing::InitGoogleTest(&argc, argv);
|
||||
::testing::InitGoogleTest(&argc,argv);
|
||||
return RUN_ALL_TESTS();
|
||||
}
|
||||
|
Reference in New Issue
Block a user