chromium/third_party/perfetto/src/trace_processor/db/query_executor_unittest.cc

/*
 * Copyright (C) 2023 The Android Open Source Project
 *
 * Licensed 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 at
 *
 *      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 "src/trace_processor/db/query_executor.h"

#include <algorithm>
#include <cstdint>
#include <memory>
#include <numeric>
#include <string>
#include <vector>

#include "perfetto/ext/base/string_view.h"
#include "perfetto/trace_processor/basic_types.h"
#include "src/trace_processor/containers/bit_vector.h"
#include "src/trace_processor/containers/row_map.h"
#include "src/trace_processor/containers/string_pool.h"
#include "src/trace_processor/db/column/arrangement_overlay.h"
#include "src/trace_processor/db/column/data_layer.h"
#include "src/trace_processor/db/column/fake_storage.h"
#include "src/trace_processor/db/column/id_storage.h"
#include "src/trace_processor/db/column/null_overlay.h"
#include "src/trace_processor/db/column/numeric_storage.h"
#include "src/trace_processor/db/column/selector_overlay.h"
#include "src/trace_processor/db/column/set_id_storage.h"
#include "src/trace_processor/db/column/string_storage.h"
#include "src/trace_processor/db/column/types.h"
#include "test/gtest_and_gmock.h"

namespace perfetto::trace_processor {
namespace {

ElementsAre;

IdStorage;
SetIdStorage;
StringStorage;
NullOverlay;
ArrangementOverlay;
SelectorOverlay;

Indices;

TEST(QueryExecutor, OnlyStorageRange) {}

TEST(QueryExecutor, OnlyStorageRangeIsNull) {}

TEST(QueryExecutor, OnlyStorageIndex) {}

TEST(QueryExecutor, OnlyStorageIndexIsNull) {}

TEST(QueryExecutor, NullBounds) {}

TEST(QueryExecutor, NullRangeIsNull) {}

TEST(QueryExecutor, NullIndex) {}

TEST(QueryExecutor, NullIndexIsNull) {}

TEST(QueryExecutor, SelectorOverlayBounds) {}

TEST(QueryExecutor, SelectorOverlayIndex) {}

TEST(QueryExecutor, ArrangementOverlayBounds) {}

TEST(QueryExecutor, ArrangementOverlaySubsetInputRange) {}

TEST(QueryExecutor, ArrangementOverlaySubsetInputBitvector) {}

TEST(QueryExecutor, ArrangementOverlayIndex) {}

TEST(QueryExecutor, MismatchedTypeNullWithOtherOperations) {}

TEST(QueryExecutor, SingleConstraintWithNullAndSelector) {}

TEST(QueryExecutor, SingleConstraintWithNullAndArrangement) {}

TEST(QueryExecutor, IsNullWithSelector) {}

TEST(QueryExecutor, BinarySearch) {}

TEST(QueryExecutor, BinarySearchIsNull) {}

TEST(QueryExecutor, SetIdStorage) {}

TEST(QueryExecutor, BinarySearchNotEq) {}

TEST(QueryExecutor, IdSearchIsNull) {}

TEST(QueryExecutor, IdSearchIsNotNull) {}

TEST(QueryExecutor, IdSearchNotEq) {}

TEST(QueryExecutor, StringSearchIsNull) {}

TEST(QueryExecutor, StringSearchGtSorted) {}

TEST(QueryExecutor, StringSearchNeSorted) {}

TEST(QueryExecutor, MismatchedTypeIdWithString) {}

TEST(QueryExecutor, MismatchedTypeIdWithDouble) {}

TEST(QueryExecutor, MismatchedTypeSetIdWithDouble) {}

#if !PERFETTO_BUILDFLAG(PERFETTO_OS_WIN)
TEST(QueryExecutor, StringBinarySearchRegex) {}

TEST(QueryExecutor, StringBinarySearchRegexWithNum) {}
#endif

}  // namespace
}  // namespace perfetto::trace_processor