1 /* 2 * Copyright (C) 2023 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef SECURITY_GUARD_RDB_PREDICATES_MOCK_H 17 #define SECURITY_GUARD_RDB_PREDICATES_MOCK_H 18 19 #include <cstdint> 20 #include <string> 21 22 #include <gtest/gtest.h> 23 24 namespace OHOS::NativeRdb { 25 class AbsPredicates { 26 public: 27 AbsPredicates() = default; 28 virtual ~AbsPredicates() = default; EqualTo(std::string field,std::string value)29 virtual AbsPredicates *EqualTo(std::string field, std::string value) {return nullptr;}; EqualTo(std::string field,int value)30 virtual AbsPredicates *EqualTo(std::string field, int value) {return nullptr;}; NotEqualTo(std::string field,std::string value)31 virtual AbsPredicates *NotEqualTo(std::string field, std::string value) {return nullptr;}; BeginWrap()32 virtual AbsPredicates *BeginWrap() {return nullptr;}; EndWrap()33 virtual AbsPredicates *EndWrap() {return nullptr;}; Or()34 virtual AbsPredicates *Or() {return nullptr;}; And()35 virtual AbsPredicates *And() {return nullptr;}; Contains(std::string field,std::string value)36 virtual AbsPredicates *Contains(std::string field, std::string value) {return nullptr;}; BeginsWith(std::string field,std::string value)37 virtual AbsPredicates *BeginsWith(std::string field, std::string value) {return nullptr;}; EndsWith(std::string field,std::string value)38 virtual AbsPredicates *EndsWith(std::string field, std::string value) {return nullptr;}; IsNull(std::string field)39 virtual AbsPredicates *IsNull(std::string field) {return nullptr;}; IsNotNull(std::string field)40 virtual AbsPredicates *IsNotNull(std::string field) {return nullptr;}; Like(std::string field,std::string value)41 virtual AbsPredicates *Like(std::string field, std::string value) {return nullptr;}; Glob(std::string field,std::string value)42 virtual AbsPredicates *Glob(std::string field, std::string value) {return nullptr;}; Between(std::string field,std::string low,std::string high)43 virtual AbsPredicates *Between(std::string field, std::string low, std::string high) {return nullptr;}; NotBetween(std::string field,std::string low,std::string high)44 virtual AbsPredicates *NotBetween(std::string field, std::string low, std::string high) {return nullptr;}; GreaterThan(std::string field,std::string value)45 virtual AbsPredicates *GreaterThan(std::string field, std::string value) {return nullptr;}; LessThan(std::string field,std::string value)46 virtual AbsPredicates *LessThan(std::string field, std::string value) {return nullptr;}; GreaterThanOrEqualTo(std::string field,std::string value)47 virtual AbsPredicates *GreaterThanOrEqualTo(std::string field, std::string value) {return nullptr;}; LessThanOrEqualTo(std::string field,std::string value)48 virtual AbsPredicates *LessThanOrEqualTo(std::string field, std::string value) {return nullptr;}; OrderByAsc(std::string field)49 virtual AbsPredicates *OrderByAsc(std::string field) {return nullptr;}; OrderByDesc(std::string field)50 virtual AbsPredicates *OrderByDesc(std::string field) {return nullptr;}; Distinct()51 virtual AbsPredicates *Distinct() {return nullptr;}; Limit(int value)52 virtual AbsPredicates *Limit(int value) {return nullptr;}; Offset(int rowOffset)53 virtual AbsPredicates *Offset(int rowOffset) {return nullptr;}; GroupBy(std::vector<std::string> fields)54 virtual AbsPredicates *GroupBy(std::vector<std::string> fields) {return nullptr;}; IndexedBy(std::string indexName)55 virtual AbsPredicates *IndexedBy(std::string indexName) {return nullptr;}; In(std::string field,std::vector<std::string> values)56 virtual AbsPredicates *In(std::string field, std::vector<std::string> values) {return nullptr;}; NotIn(std::string field,std::vector<std::string> values)57 virtual AbsPredicates *NotIn(std::string field, std::vector<std::string> values) {return nullptr;}; 58 }; 59 60 class AbsRdbPredicates : public AbsPredicates { 61 public: AbsRdbPredicates(std::string string)62 AbsRdbPredicates(std::string string) : AbsPredicates() {}; ~AbsRdbPredicates()63 ~AbsRdbPredicates() override {}; 64 }; 65 66 class RdbPredicates : public AbsRdbPredicates { 67 public: RdbPredicates(std::string string)68 explicit RdbPredicates(std::string string) : AbsRdbPredicates(string){}; ~RdbPredicates()69 ~RdbPredicates() override {}; NotEqualTo(std::string field,std::string value)70 virtual AbsPredicates *NotEqualTo(std::string field, std::string value) {return nullptr;}; BeginWrap()71 virtual AbsPredicates *BeginWrap() {return nullptr;}; EndWrap()72 virtual AbsPredicates *EndWrap() {return nullptr;}; Or()73 virtual AbsPredicates *Or() {return nullptr;}; And()74 virtual AbsPredicates *And() {return nullptr;}; Contains(std::string field,std::string value)75 virtual AbsPredicates *Contains(std::string field, std::string value) {return nullptr;}; BeginsWith(std::string field,std::string value)76 virtual AbsPredicates *BeginsWith(std::string field, std::string value) {return nullptr;}; EndsWith(std::string field,std::string value)77 virtual AbsPredicates *EndsWith(std::string field, std::string value) {return nullptr;}; IsNull(std::string field)78 virtual AbsPredicates *IsNull(std::string field) {return nullptr;}; IsNotNull(std::string field)79 virtual AbsPredicates *IsNotNull(std::string field) {return nullptr;}; Like(std::string field,std::string value)80 virtual AbsPredicates *Like(std::string field, std::string value) {return nullptr;}; Glob(std::string field,std::string value)81 virtual AbsPredicates *Glob(std::string field, std::string value) {return nullptr;}; Between(std::string field,std::string low,std::string high)82 virtual AbsPredicates *Between(std::string field, std::string low, std::string high) {return nullptr;}; NotBetween(std::string field,std::string low,std::string high)83 virtual AbsPredicates *NotBetween(std::string field, std::string low, std::string high) {return nullptr;}; GreaterThan(std::string field,std::string value)84 virtual AbsPredicates *GreaterThan(std::string field, std::string value) {return nullptr;}; LessThan(std::string field,std::string value)85 virtual AbsPredicates *LessThan(std::string field, std::string value) {return nullptr;}; GreaterThanOrEqualTo(std::string field,std::string value)86 virtual AbsPredicates *GreaterThanOrEqualTo(std::string field, std::string value) {return nullptr;}; LessThanOrEqualTo(std::string field,std::string value)87 virtual AbsPredicates *LessThanOrEqualTo(std::string field, std::string value) {return nullptr;}; OrderByAsc(std::string field)88 virtual AbsPredicates *OrderByAsc(std::string field) {return nullptr;}; OrderByDesc(std::string field)89 virtual AbsPredicates *OrderByDesc(std::string field) {return nullptr;}; Distinct()90 virtual AbsPredicates *Distinct() {return nullptr;}; Limit(int value)91 virtual AbsPredicates *Limit(int value) {return nullptr;}; Offset(int rowOffset)92 virtual AbsPredicates *Offset(int rowOffset) {return nullptr;}; GroupBy(std::vector<std::string> fields)93 virtual AbsPredicates *GroupBy(std::vector<std::string> fields) {return nullptr;}; IndexedBy(std::string indexName)94 virtual AbsPredicates *IndexedBy(std::string indexName) {return nullptr;}; In(std::string field,std::vector<std::string> values)95 virtual AbsPredicates *In(std::string field, std::vector<std::string> values) {return nullptr;}; NotIn(std::string field,std::vector<std::string> values)96 virtual AbsPredicates *NotIn(std::string field, std::vector<std::string> values) {return nullptr;}; 97 }; 98 } // namespace OHOS::NativeRdb 99 #endif // SECURITY_GUARD_RDB_PREDICATES_MOCK_H