blob: c5f82e65091a782ce48ad82e30a84ede1aa312d5 [file] [log] [blame]
#include "flutter/shell/platform/android/apk_asset_provider.h"
#include "gmock/gmock.h"
#include "gtest/gtest.h"
namespace flutter {
namespace testing {
class MockAPKAssetProviderImpl : public APKAssetProviderInternal {
public:
MOCK_METHOD(std::unique_ptr<fml::Mapping>,
GetAsMapping,
(const std::string& asset_name),
(const, override));
};
TEST(APKAssetProvider, Clone) {
auto first_provider = std::make_unique<APKAssetProvider>(
std::make_shared<MockAPKAssetProviderImpl>());
auto second_provider = std::make_unique<APKAssetProvider>(
std::make_shared<MockAPKAssetProviderImpl>());
auto third_provider = first_provider->Clone();
ASSERT_NE(first_provider->GetImpl(), second_provider->GetImpl());
ASSERT_EQ(first_provider->GetImpl(), third_provider->GetImpl());
}
} // namespace testing
} // namespace flutter