blob: a758e52be5455bba0b19e674c102a89b2063d723 [file] [log] [blame] [edit]
// Copyright 2023 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef DLCSERVICE_METADATA_MOCK_METADATA_H_
#define DLCSERVICE_METADATA_MOCK_METADATA_H_
#include <optional>
#include <set>
#include <string>
#include <base/values.h>
#include <gmock/gmock.h>
#include "dlcservice/metadata/metadata_interface.h"
namespace dlcservice::metadata {
class MockMetadata : public MetadataInterface {
public:
MockMetadata() {
ON_CALL(*this, GetCache).WillByDefault(testing::ReturnRef(cache_));
ON_CALL(*this, GetFileIds).WillByDefault(testing::ReturnRef(file_ids_));
}
~MockMetadata() override = default;
MockMetadata(const MockMetadata&) = delete;
MockMetadata& operator=(const MockMetadata&) = delete;
MOCK_METHOD(bool, Initialize, (), (override));
MOCK_METHOD(std::optional<Entry>, Get, (const DlcId&), (override));
MOCK_METHOD(bool, Set, (const DlcId&, const Entry&), (override));
MOCK_METHOD(bool, LoadMetadata, (const DlcId&), (override));
MOCK_METHOD(void, UpdateFileIds, (), (override));
MOCK_METHOD(const base::Value::Dict&, GetCache, (), (const override));
MOCK_METHOD(const std::set<DlcId>&, GetFileIds, (), (const override));
MOCK_METHOD(DlcIdList,
ListDlcIds,
(const FilterKey& filter_key, const base::Value& filter_val),
(override));
MOCK_METHOD(std::optional<std::string>,
FilterKeyToString,
(const FilterKey& key_enum),
(override));
private:
base::Value::Dict cache_;
std::set<DlcId> file_ids_;
};
} // namespace dlcservice::metadata
#endif // DLCSERVICE_METADATA_MOCK_METADATA_H_