| Index: extensions/browser/api/cast_channel/cast_channel_apitest.cc
|
| diff --git a/extensions/browser/api/cast_channel/cast_channel_apitest.cc b/extensions/browser/api/cast_channel/cast_channel_apitest.cc
|
| index d60355afbce2ba5e10d04e43781ea2809ede4e09..6fedb33065a2c25b482dc5a1d4b11ea0a3d84914 100644
|
| --- a/extensions/browser/api/cast_channel/cast_channel_apitest.cc
|
| +++ b/extensions/browser/api/cast_channel/cast_channel_apitest.cc
|
| @@ -183,6 +183,15 @@ class CastChannelAPITest : public ExtensionApiTest {
|
| return cast_channel_send_function;
|
| }
|
|
|
| + extensions::CastChannelSetAuthorityKeysFunction*
|
| + CreateSetAuthorityKeysFunction(scoped_refptr<Extension> extension) {
|
| + extensions::CastChannelSetAuthorityKeysFunction*
|
| + cast_channel_set_authority_keys_function =
|
| + new extensions::CastChannelSetAuthorityKeysFunction;
|
| + cast_channel_set_authority_keys_function->set_extension(extension.get());
|
| + return cast_channel_set_authority_keys_function;
|
| + }
|
| +
|
| MockCastSocket* mock_cast_socket_;
|
| net::CapturingNetLog capturing_net_log_;
|
| };
|
| @@ -396,3 +405,100 @@ IN_PROC_BROWSER_TEST_F(CastChannelAPITest, TestSendInvalidMessageInfo) {
|
| browser());
|
| EXPECT_EQ(error, "message_info.destination_id is required");
|
| }
|
| +
|
| +IN_PROC_BROWSER_TEST_F(CastChannelAPITest, TestSetAuthorityKeysInvalid) {
|
| + scoped_refptr<Extension> empty_extension(
|
| + extensions::test_util::CreateEmptyExtension());
|
| + scoped_refptr<extensions::CastChannelSetAuthorityKeysFunction>
|
| + cast_channel_set_authority_keys_function;
|
| + std::string errorResult = "Unable to set authority keys.";
|
| +
|
| + cast_channel_set_authority_keys_function =
|
| + CreateSetAuthorityKeysFunction(empty_extension);
|
| + std::string error = utils::RunFunctionAndReturnError(
|
| + cast_channel_set_authority_keys_function.get(),
|
| + "[\"\", \"signature\"]",
|
| + browser());
|
| + EXPECT_EQ(error, errorResult);
|
| +
|
| + cast_channel_set_authority_keys_function =
|
| + CreateSetAuthorityKeysFunction(empty_extension);
|
| + error = utils::RunFunctionAndReturnError(
|
| + cast_channel_set_authority_keys_function.get(),
|
| + "[\"keys\", \"\"]",
|
| + browser());
|
| + EXPECT_EQ(error, errorResult);
|
| +
|
| + std::string keys =
|
| + "CrMCCiBSnZzWf+XraY5w3SbX2PEmWfHm5SNIv2pc9xbhP0EOcxKOAjCCAQoCggEBALwigL"
|
| + "2A9johADuudl41fz3DZFxVlIY0LwWHKM33aYwXs1CnuIL638dDLdZ+q6BvtxNygKRHFcEg"
|
| + "mVDN7BRiCVukmM3SQbY2Tv/oLjIwSoGoQqNsmzNuyrL1U2bgJ1OGGoUepzk/SneO+1RmZv"
|
| + "tYVMBeOcf1UAYL4IrUzuFqVR+LFwDmaaMn5gglaTwSnY0FLNYuojHetFJQ1iBJ3nGg+a0g"
|
| + "QBLx3SXr1ea4NvTWj3/KQ9zXEFvmP1GKhbPz//YDLcsjT5ytGOeTBYysUpr3TOmZer5ufk"
|
| + "0K48YcqZP6OqWRXRy9ZuvMYNyGdMrP+JIcmH1X+mFHnquAt+RIgCqSxRsCAwEAAQ==";
|
| + std::string signature =
|
| + "chCUHZKkykcwU8HzU+hm027fUTBL0dqPMtrzppwExQwK9+"
|
| + "XlmCjJswfce2sUUfhR1OL1tyW4hWFwu4JnuQCJ+CvmSmAh2bzRpnuSKzBfgvIDjNOAGUs7"
|
| + "ADaNSSWPLxp+6ko++2Dn4S9HpOt8N1v6gMWqj3Ru5IqFSQPZSvGH2ois6uE50CFayPcjQE"
|
| + "OVZt41noQdFd15RmKTvocoCC5tHNlaikeQ52yi0IScOlad1B1lMhoplW3rWophQaqxMumr"
|
| + "OcHIZ+Y+p858x5f8Pny/kuqUClmFh9B/vF07NsUHwoSL9tA5t5jCY3L5iUc/v7o3oFcW/T"
|
| + "gojKkX2Kg7KQ86QA==";
|
| +
|
| + cast_channel_set_authority_keys_function =
|
| + CreateSetAuthorityKeysFunction(empty_extension);
|
| + error = utils::RunFunctionAndReturnError(
|
| + cast_channel_set_authority_keys_function.get(),
|
| + "[\"" + keys + "\", \"signature\"]",
|
| + browser());
|
| + EXPECT_EQ(error, errorResult);
|
| +
|
| + cast_channel_set_authority_keys_function =
|
| + CreateSetAuthorityKeysFunction(empty_extension);
|
| + error = utils::RunFunctionAndReturnError(
|
| + cast_channel_set_authority_keys_function.get(),
|
| + "[\"keys\", \"" + signature + "\"]",
|
| + browser());
|
| + EXPECT_EQ(error, errorResult);
|
| +
|
| + cast_channel_set_authority_keys_function =
|
| + CreateSetAuthorityKeysFunction(empty_extension);
|
| + error = utils::RunFunctionAndReturnError(
|
| + cast_channel_set_authority_keys_function.get(),
|
| + "[\"" + keys + "\", \"" + signature + "\"]",
|
| + browser());
|
| + EXPECT_EQ(error, errorResult);
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(CastChannelAPITest, TestSetAuthorityKeysValid) {
|
| + scoped_refptr<Extension> empty_extension(
|
| + extensions::test_util::CreateEmptyExtension());
|
| + scoped_refptr<extensions::CastChannelSetAuthorityKeysFunction>
|
| + cast_channel_set_authority_keys_function;
|
| +
|
| + cast_channel_set_authority_keys_function =
|
| + CreateSetAuthorityKeysFunction(empty_extension);
|
| + std::string keys =
|
| + "CrMCCiBSnZzWf+XraY5w3SbX2PEmWfHm5SNIv2pc9xbhP0EOcxKOAjCCAQoCggEBALwigL"
|
| + "2A9johADuudl41fz3DZFxVlIY0LwWHKM33aYwXs1CnuIL638dDLdZ+q6BvtxNygKRHFcEg"
|
| + "mVDN7BRiCVukmM3SQbY2Tv/oLjIwSoGoQqNsmzNuyrL1U2bgJ1OGGoUepzk/SneO+1RmZv"
|
| + "tYVMBeOcf1UAYL4IrUzuFqVR+LFwDmaaMn5gglaTwSnY0FLNYuojHetFJQ1iBJ3nGg+a0g"
|
| + "QBLx3SXr1ea4NvTWj3/KQ9zXEFvmP1GKhbPz//YDLcsjT5ytGOeTBYysUpr3TOmZer5ufk"
|
| + "0K48YcqZP6OqWRXRy9ZuvMYNyGdMrP+JIcmH1X+mFHnquAt+RIgCqSxRsCAwEAAQqzAgog"
|
| + "okjC6FTmVqVt6CMfHuF1b9vkB/n+1GUNYMxay2URxyASjgIwggEKAoIBAQCwDl4HOt+kX2"
|
| + "j3Icdk27Z27+6Lk/j2G4jhk7cX8BUeflJVdzwCjXtKbNO91sGccsizFc8RwfVGxNUgR/sw"
|
| + "9ORhDGjwXqs3jpvhvIHDcIp41oM0MpwZYuvknO3jZGxBHZzSi0hMI5CVs+dS6gVXzGCzuh"
|
| + "TkugA55EZVdM5ajnpnI9poCvrEhB60xaGianMfbsguL5qeqLEO/Yemj009SwXVNVp0TbyO"
|
| + "gkSW9LWVYE6l3yc9QVwHo7Q1WrOe8gUkys0xWg0mTNTT/VDhNOlMgVgwssd63YGJptQ6OI"
|
| + "QDtzSedz//eAdbmcGyHzVWbjo8DCXhV/aKfknAzIMRNeeRbS5lAgMBAAE=";
|
| + std::string signature =
|
| + "o83oku3jP+xjTysNBalqp/ZfJRPLt8R+IUhZMepbARFSRVizLoeFW5XyUwe6lQaC+PFFQH"
|
| + "SZeGZyeeGRpwCJ/lef0xh6SWJlVMWNTk5+z0U84GQdizJP/CTCeHpIwMobN+kyDajgOyfD"
|
| + "DLhktc6LHmSlFGG6J7B8W67oziS8ZFEdrcT9WSXFrjLVyURHjvidZD5iFtuImI6k9R9OoX"
|
| + "LR6SyAwpjdrL+vlHMk3Gol6KQ98YpF0ghHnN3/FFW4ibvIwjmRbp+tUV3h8TRcCOjlXVGp"
|
| + "bzPtNRRlTqfv7Rxm5YXkZMLmJJMZiTs5+o8FMRMTQZT4hRR3DQ+A/jofViyTGA==";
|
| +
|
| + std::string args = "[\"" + keys + "\", \"" + signature + "\"]";
|
| + std::string error = utils::RunFunctionAndReturnError(
|
| + cast_channel_set_authority_keys_function.get(), args, browser());
|
| + EXPECT_EQ(error, std::string());
|
| +}
|
|
|