#include "src/trace_processor/sqlite/db_sqlite_table.h"
#include <sqlite3.h>
#include <array>
#include <cstdint>
#include "perfetto/trace_processor/basic_types.h"
#include "src/trace_processor/db/table.h"
#include "test/gtest_and_gmock.h"
namespace perfetto::trace_processor {
namespace {
Table::Schema CreateSchema() { … }
sqlite3_index_info::sqlite3_index_constraint CreateConstraint(int col,
uint8_t op) { … }
sqlite3_index_info::sqlite3_index_constraint_usage CreateUsage() { … }
sqlite3_index_info CreateCsIndexInfo(
int cs_count,
sqlite3_index_info::sqlite3_index_constraint* c,
sqlite3_index_info::sqlite3_index_constraint_usage* u) { … }
sqlite3_index_info CreateObIndexInfo(
int ob_count,
sqlite3_index_info::sqlite3_index_orderby* o) { … }
TEST(DbSqliteModule, IdEqCheaperThanOtherEq) { … }
TEST(DbSqliteModule, IdEqCheaperThatOtherConstraint) { … }
TEST(DbSqliteModule, SingleEqCheaperThanMultipleConstraint) { … }
TEST(DbSqliteModule, MultiSortedEqCheaperThanMultiUnsortedEq) { … }
TEST(DbSqliteModule, EmptyTableCosting) { … }
TEST(DbSqliteModule, OrderByOnSortedCheaper) { … }
}
}