#pragma once #include #include #include #include #include #include #include struct MockTileData; struct MockSource { mbgl::Range zoomRange { 0, 16 }; std::map> dataTiles; std::set idealTiles; // Test API inline MockTileData* createTileData(const mbgl::OverscaledTileID& tileID); }; struct MockBucket {}; struct MockTileData { MockTileData(const mbgl::OverscaledTileID& tileID_) : tileID(tileID_) {} bool hasTriedOptional() const { return triedOptional; } bool isRenderable() const { return renderable; } bool isLoaded() const { return loaded; } bool renderable = false; bool triedOptional = false; bool loaded = false; const mbgl::OverscaledTileID tileID; }; MockTileData* MockSource::createTileData(const mbgl::OverscaledTileID& tileID) { // Replace the existing MockTileData object, if any. return (dataTiles[tileID] = std::make_unique(tileID)).get(); }