#include "extensions/browser/api/declarative/declarative_rule.h"
#include <optional>
#include "base/containers/contains.h"
#include "base/functional/bind.h"
#include "base/memory/raw_ptr.h"
#include "base/memory/raw_ref.h"
#include "base/test/values_test_util.h"
#include "base/values.h"
#include "components/url_matcher/url_matcher_constants.h"
#include "extensions/common/extension_builder.h"
#include "extensions/common/extension_id.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
ParseJson;
ParseJsonDict;
URLMatcher;
URLMatcherConditionFactory;
URLMatcherConditionSet;
namespace extensions {
namespace {
base::Value::Dict SimpleManifest() { … }
}
struct RecordingCondition { … };
RecordingConditionSet;
TEST(DeclarativeConditionTest, ErrorConditionSet) { … }
TEST(DeclarativeConditionTest, CreateConditionSet) { … }
struct FulfillableCondition { … };
TEST(DeclarativeConditionTest, FulfillConditionSet) { … }
class SummingAction : public base::RefCounted<SummingAction> { … };
SummingActionSet;
TEST(DeclarativeActionTest, ErrorActionSet) { … }
TEST(DeclarativeActionTest, ApplyActionSet) { … }
TEST(DeclarativeRuleTest, Create) { … }
bool AtLeastOneCondition(
const DeclarativeConditionSet<FulfillableCondition>* conditions,
const DeclarativeActionSet<SummingAction>* actions,
std::string* error) { … }
TEST(DeclarativeRuleTest, CheckConsistency) { … }
}