#include "components/feature_engagement/internal/persistent_availability_store.h"
#include <stdint.h>
#include <map>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/memory/raw_ptr.h"
#include "base/test/scoped_feature_list.h"
#include "components/feature_engagement/internal/proto/availability.pb.h"
#include "components/feature_engagement/public/feature_list.h"
#include "components/leveldb_proto/public/proto_database.h"
#include "components/leveldb_proto/testing/fake_db.h"
#include "testing/gtest/include/gtest/gtest.h"
namespace feature_engagement {
namespace {
BASE_FEATURE(…);
BASE_FEATURE(…);
BASE_FEATURE(…);
BASE_FEATURE(…);
Availability CreateAvailability(const base::Feature& feature, uint32_t day) { … }
class PersistentAvailabilityStoreTest : public testing::Test { … };
}
TEST_F(PersistentAvailabilityStoreTest, InitFail) { … }
TEST_F(PersistentAvailabilityStoreTest, LoadFail) { … }
TEST_F(PersistentAvailabilityStoreTest, EmptyDBEmptyFeatureFilterUpdateFailed) { … }
TEST_F(PersistentAvailabilityStoreTest, EmptyDBEmptyFeatureFilterUpdateOK) { … }
TEST_F(PersistentAvailabilityStoreTest, AllNewFeatures) { … }
TEST_F(PersistentAvailabilityStoreTest, TestAllFilterCombinations) { … }
TEST_F(PersistentAvailabilityStoreTest, TestAllCombinationsEmptyFilter) { … }
}