| 652 | } |
| 653 | |
| 654 | void addAssetArtifact(const StringBox& url, |
| 655 | const Shared<RequestManagerMock>& requestManager, |
| 656 | const Ref<DownloadableModuleManifestWrapper>& manifest, |
| 657 | double deviceDensity) { |
| 658 | auto assets1 = manifest->pb.add_assets(); |
| 659 | assets1->set_device_density(deviceDensity); |
| 660 | auto assets1Artifact = assets1->mutable_artifact(); |
| 661 | assets1Artifact->set_url(url.slowToString()); |
| 662 | |
| 663 | ValdiArchiveBuilder assetsBuilder; |
| 664 | assetsBuilder.addEntry( |
| 665 | ValdiArchiveEntry(STRING_FORMAT("density-{}", static_cast<int>(deviceDensity)), StringBox())); |
| 666 | auto assetsArtifactBytes = assetsBuilder.build(); |
| 667 | auto sha256Digest = BytesUtils::sha256(assetsArtifactBytes->toBytesView()); |
| 668 | // Create a string to retain the memory (otherwise the digest bytes get destructed) |
| 669 | auto sha256DigestStr = std::string(sha256Digest->toBytesView().asStringView()); |
| 670 | assets1Artifact->set_sha256digest(sha256DigestStr); |
| 671 | |
| 672 | requestManager->addMockedResponse(url, STRING_LITERAL("GET"), assetsArtifactBytes->toBytesView()); |
| 673 | } |
| 674 | |
| 675 | Result<Ref<RemoteModuleResources>> fetchAsset(const Shared<RequestManagerMock>& requestManager, |
| 676 | const Ref<DownloadableModuleManifestWrapper>& manifest, |
no test coverage detected