Commit 9a6944e0 authored by Kenichi Ishibashi's avatar Kenichi Ishibashi Committed by Commit Bot

service worker: Replace old metadata writer with mojo version in tests

Bug: 1055677
Change-Id: Ieb2758fdda0ae2a6054936d57e7454ffaad1bddd
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2303411
Commit-Queue: Kenichi Ishibashi <bashi@chromium.org>
Reviewed-by: default avatarMakoto Shimazu <shimazu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#789857}
parent 8aaf58a0
...@@ -247,17 +247,26 @@ bool VerifyBasicResponse( ...@@ -247,17 +247,26 @@ bool VerifyBasicResponse(
return status_match && data_match; return status_match && data_match;
} }
int WriteResponseMetadata(ServiceWorkerStorage* storage, int WriteResponseMetadata(
int64_t id, mojo::Remote<storage::mojom::ServiceWorkerStorageControl>& storage,
const std::string& metadata) { int64_t id,
scoped_refptr<IOBuffer> body_buffer = const std::string& metadata) {
base::MakeRefCounted<WrappedIOBuffer>(metadata.data()); mojo_base::BigBuffer buffer(
std::unique_ptr<ServiceWorkerResponseMetadataWriter> metadata_writer = base::as_bytes(base::make_span(metadata.data(), metadata.length())));
storage->CreateResponseMetadataWriter(id);
TestCompletionCallback cb; mojo::Remote<storage::mojom::ServiceWorkerResourceMetadataWriter>
metadata_writer->WriteMetadata(body_buffer.get(), metadata.length(), metadata_writer;
cb.callback()); storage->CreateResourceMetadataWriter(
return cb.WaitForResult(); id, metadata_writer.BindNewPipeAndPassReceiver());
int rv = 0;
base::RunLoop loop;
metadata_writer->WriteMetadata(std::move(buffer),
base::BindLambdaForTesting([&](int result) {
rv = result;
loop.Quit();
}));
loop.Run();
return rv;
} }
int WriteMetadata(ServiceWorkerVersion* version, int WriteMetadata(ServiceWorkerVersion* version,
...@@ -719,7 +728,7 @@ TEST_F(ServiceWorkerStorageTest, DisabledStorage) { ...@@ -719,7 +728,7 @@ TEST_F(ServiceWorkerStorageTest, DisabledStorage) {
EXPECT_EQ(net::ERR_FAILED, EXPECT_EQ(net::ERR_FAILED,
WriteBasicResponse(storage_control(), kResourceId)); WriteBasicResponse(storage_control(), kResourceId));
EXPECT_EQ(net::ERR_FAILED, EXPECT_EQ(net::ERR_FAILED,
WriteResponseMetadata(storage(), kResourceId, "foo")); WriteResponseMetadata(storage_control(), kResourceId, "foo"));
const std::string kUserDataKey = "key"; const std::string kUserDataKey = "key";
std::vector<std::string> user_data_out; std::vector<std::string> user_data_out;
...@@ -1373,24 +1382,27 @@ TEST_F(ServiceWorkerResourceStorageTest, ...@@ -1373,24 +1382,27 @@ TEST_F(ServiceWorkerResourceStorageTest,
const char kMetadata2[] = "small"; const char kMetadata2[] = "small";
int64_t new_resource_id_ = GetNewResourceIdSync(storage()); int64_t new_resource_id_ = GetNewResourceIdSync(storage());
// Writing metadata to nonexistent resoirce ID must fail. // Writing metadata to nonexistent resoirce ID must fail.
EXPECT_GE(0, WriteResponseMetadata(storage(), new_resource_id_, kMetadata1)); EXPECT_GE(0, WriteResponseMetadata(storage_control(), new_resource_id_,
kMetadata1));
// Check metadata is written. // Check metadata is written.
EXPECT_EQ(static_cast<int>(strlen(kMetadata1)), EXPECT_EQ(
WriteResponseMetadata(storage(), resource_id1_, kMetadata1)); static_cast<int>(strlen(kMetadata1)),
WriteResponseMetadata(storage_control(), resource_id1_, kMetadata1));
EXPECT_TRUE( EXPECT_TRUE(
VerifyResponseMetadata(storage_control(), resource_id1_, kMetadata1)); VerifyResponseMetadata(storage_control(), resource_id1_, kMetadata1));
EXPECT_TRUE(VerifyBasicResponse(storage_control(), resource_id1_, true)); EXPECT_TRUE(VerifyBasicResponse(storage_control(), resource_id1_, true));
// Check metadata is written and truncated. // Check metadata is written and truncated.
EXPECT_EQ(static_cast<int>(strlen(kMetadata2)), EXPECT_EQ(
WriteResponseMetadata(storage(), resource_id1_, kMetadata2)); static_cast<int>(strlen(kMetadata2)),
WriteResponseMetadata(storage_control(), resource_id1_, kMetadata2));
EXPECT_TRUE( EXPECT_TRUE(
VerifyResponseMetadata(storage_control(), resource_id1_, kMetadata2)); VerifyResponseMetadata(storage_control(), resource_id1_, kMetadata2));
EXPECT_TRUE(VerifyBasicResponse(storage_control(), resource_id1_, true)); EXPECT_TRUE(VerifyBasicResponse(storage_control(), resource_id1_, true));
// Check metadata is deleted. // Check metadata is deleted.
EXPECT_EQ(0, WriteResponseMetadata(storage(), resource_id1_, "")); EXPECT_EQ(0, WriteResponseMetadata(storage_control(), resource_id1_, ""));
EXPECT_FALSE(VerifyResponseMetadata(storage_control(), resource_id1_, "")); EXPECT_FALSE(VerifyResponseMetadata(storage_control(), resource_id1_, ""));
EXPECT_TRUE(VerifyBasicResponse(storage_control(), resource_id1_, true)); EXPECT_TRUE(VerifyBasicResponse(storage_control(), resource_id1_, true));
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment