| /* |
| * Licensed to the Apache Software Foundation (ASF) under one |
| * or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information |
| * regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the |
| * License); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License a |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| */ |
| #include "utils/db_utils.h" |
| |
| #include <gtest/gtest.h> |
| |
| #include <sstream> |
| |
| namespace common { |
| |
| TEST(FileIDTest, Constructor) { |
| FileID file_id; |
| EXPECT_EQ(file_id.seq_, 0); |
| EXPECT_EQ(file_id.version_, 0); |
| EXPECT_EQ(file_id.merge_, 0); |
| } |
| |
| TEST(FileIDTest, Reset) { |
| FileID file_id; |
| file_id.seq_ = 123; |
| file_id.version_ = 1; |
| file_id.merge_ = 2; |
| file_id.reset(); |
| EXPECT_EQ(file_id.seq_, 0); |
| EXPECT_EQ(file_id.version_, 0); |
| EXPECT_EQ(file_id.merge_, 0); |
| } |
| |
| TEST(FileIDTest, IsValid) { |
| FileID file_id; |
| EXPECT_FALSE(file_id.is_valid()); |
| file_id.seq_ = 123; |
| EXPECT_TRUE(file_id.is_valid()); |
| } |
| |
| TEST(FileIDTest, OperatorLess) { |
| FileID file_id1, file_id2; |
| file_id1.seq_ = 123; |
| file_id2.seq_ = 456; |
| EXPECT_TRUE(file_id1 < file_id2); |
| EXPECT_FALSE(file_id2 < file_id1); |
| } |
| |
| TEST(FileIDTest, OperatorEqual) { |
| FileID file_id1, file_id2; |
| file_id1.seq_ = 123; |
| file_id2.seq_ = 123; |
| EXPECT_TRUE(file_id1 == file_id2); |
| file_id2.seq_ = 456; |
| EXPECT_FALSE(file_id1 == file_id2); |
| } |
| |
| TEST(TsIDTest, Constructor) { |
| TsID ts_id; |
| EXPECT_EQ(ts_id.db_nid_, 0); |
| EXPECT_EQ(ts_id.device_nid_, 0); |
| EXPECT_EQ(ts_id.measurement_nid_, 0); |
| } |
| |
| TEST(TsIDTest, ParameterizedConstructor) { |
| TsID ts_id(1, 2, 3); |
| EXPECT_EQ(ts_id.db_nid_, 1); |
| EXPECT_EQ(ts_id.device_nid_, 2); |
| EXPECT_EQ(ts_id.measurement_nid_, 3); |
| } |
| |
| TEST(TsIDTest, Reset) { |
| TsID ts_id(1, 2, 3); |
| ts_id.reset(); |
| EXPECT_EQ(ts_id.db_nid_, 0); |
| EXPECT_EQ(ts_id.device_nid_, 0); |
| EXPECT_EQ(ts_id.measurement_nid_, 0); |
| } |
| |
| TEST(TsIDTest, OperatorEqual) { |
| TsID ts_id1(1, 2, 3); |
| TsID ts_id2(1, 2, 3); |
| EXPECT_TRUE(ts_id1 == ts_id2); |
| ts_id2.db_nid_ = 4; |
| EXPECT_FALSE(ts_id1 == ts_id2); |
| } |
| |
| TEST(TsIDTest, OperatorNotEqual) { |
| TsID ts_id1(1, 2, 3); |
| TsID ts_id2(1, 2, 3); |
| EXPECT_FALSE(ts_id1 != ts_id2); |
| ts_id2.db_nid_ = 4; |
| EXPECT_TRUE(ts_id1 != ts_id2); |
| } |
| |
| TEST(TsIDTest, ToInt64) { |
| TsID ts_id(1, 2, 3); |
| int64_t expected = (1LL << 32) | (2 << 16) | 3; |
| EXPECT_EQ(ts_id.to_int64(), expected); |
| } |
| |
| TEST(TsIDTest, OperatorLess) { |
| TsID ts_id1(1, 2, 3); |
| TsID ts_id2(1, 2, 4); |
| EXPECT_TRUE(ts_id1 < ts_id2); |
| EXPECT_FALSE(ts_id2 < ts_id1); |
| } |
| |
| TEST(ColumnSchemaTest, Constructor) { |
| ColumnSchema col_schema; |
| EXPECT_EQ(col_schema.data_type_, INVALID_DATATYPE); |
| EXPECT_EQ(col_schema.encoding_, PLAIN); |
| EXPECT_EQ(col_schema.compression_, UNCOMPRESSED); |
| EXPECT_EQ(col_schema.column_name_, ""); |
| } |
| |
| TEST(ColumnSchemaTest, ParameterizedConstructor) { |
| ColumnSchema col_schema("test_col", INT32, SNAPPY, RLE); |
| EXPECT_EQ(col_schema.data_type_, INT32); |
| EXPECT_EQ(col_schema.encoding_, RLE); |
| EXPECT_EQ(col_schema.compression_, SNAPPY); |
| EXPECT_EQ(col_schema.column_name_, "test_col"); |
| } |
| |
| TEST(ColumnSchemaTest, OperatorEqual) { |
| ColumnSchema col_schema1("test_col", INT32, SNAPPY, RLE); |
| ColumnSchema col_schema2("test_col", INT32, SNAPPY, RLE); |
| EXPECT_TRUE(col_schema1 == col_schema2); |
| } |
| |
| TEST(ColumnSchemaTest, OperatorNotEqual) { |
| ColumnSchema col_schema1("test_col", INT32, SNAPPY, RLE); |
| ColumnSchema col_schema2("test_col2", INT32, SNAPPY, RLE); |
| EXPECT_TRUE(col_schema1 != col_schema2); |
| } |
| |
| TEST(ColumnSchemaTest, IsValid) { |
| ColumnSchema col_schema("test_col", INT32, SNAPPY, RLE); |
| EXPECT_TRUE(col_schema.is_valid()); |
| col_schema.data_type_ = INVALID_DATATYPE; |
| EXPECT_FALSE(col_schema.is_valid()); |
| } |
| |
| TEST(UtilTest, GetCurTimestamp) { |
| int64_t timestamp = get_cur_timestamp(); |
| EXPECT_GT(timestamp, 0); |
| } |
| |
| } // namespace common |