| // Copyright 2017 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| /* DO NOT EDIT. Generated from components/cronet/native/generated/cronet.idl */ |
| |
| #include "components/cronet/native/generated/cronet.idl_c.h" |
| |
| #include "base/logging.h" |
| #include "base/macros.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| |
| // Test of Cronet_Buffer interface. |
| class Cronet_BufferTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_BufferTest() = default; |
| ~Cronet_BufferTest() override = default; |
| |
| public: |
| bool InitWithDataAndCallback_called_ = false; |
| bool InitWithAlloc_called_ = false; |
| bool GetSize_called_ = false; |
| bool GetData_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_BufferTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_Buffer methods for testing. |
| void TestCronet_Buffer_InitWithDataAndCallback( |
| Cronet_BufferPtr self, |
| Cronet_RawDataPtr data, |
| uint64_t size, |
| Cronet_BufferCallbackPtr callback) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Buffer_GetClientContext(self); |
| auto* test = static_cast<Cronet_BufferTest*>(client_context); |
| CHECK(test); |
| test->InitWithDataAndCallback_called_ = true; |
| } |
| void TestCronet_Buffer_InitWithAlloc(Cronet_BufferPtr self, uint64_t size) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Buffer_GetClientContext(self); |
| auto* test = static_cast<Cronet_BufferTest*>(client_context); |
| CHECK(test); |
| test->InitWithAlloc_called_ = true; |
| } |
| uint64_t TestCronet_Buffer_GetSize(Cronet_BufferPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Buffer_GetClientContext(self); |
| auto* test = static_cast<Cronet_BufferTest*>(client_context); |
| CHECK(test); |
| test->GetSize_called_ = true; |
| |
| return static_cast<uint64_t>(0); |
| } |
| Cronet_RawDataPtr TestCronet_Buffer_GetData(Cronet_BufferPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Buffer_GetClientContext(self); |
| auto* test = static_cast<Cronet_BufferTest*>(client_context); |
| CHECK(test); |
| test->GetData_called_ = true; |
| |
| return static_cast<Cronet_RawDataPtr>(0); |
| } |
| } // namespace |
| |
| // Test that Cronet_Buffer stub forwards function calls as expected. |
| TEST_F(Cronet_BufferTest, TestCreate) { |
| Cronet_BufferPtr test = Cronet_Buffer_CreateWith( |
| TestCronet_Buffer_InitWithDataAndCallback, |
| TestCronet_Buffer_InitWithAlloc, TestCronet_Buffer_GetSize, |
| TestCronet_Buffer_GetData); |
| CHECK(test); |
| Cronet_Buffer_SetClientContext(test, this); |
| CHECK(!InitWithDataAndCallback_called_); |
| CHECK(!InitWithAlloc_called_); |
| Cronet_Buffer_GetSize(test); |
| CHECK(GetSize_called_); |
| Cronet_Buffer_GetData(test); |
| CHECK(GetData_called_); |
| |
| Cronet_Buffer_Destroy(test); |
| } |
| |
| // Test of Cronet_BufferCallback interface. |
| class Cronet_BufferCallbackTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_BufferCallbackTest() = default; |
| ~Cronet_BufferCallbackTest() override = default; |
| |
| public: |
| bool OnDestroy_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_BufferCallbackTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_BufferCallback methods for testing. |
| void TestCronet_BufferCallback_OnDestroy(Cronet_BufferCallbackPtr self, |
| Cronet_BufferPtr buffer) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_BufferCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_BufferCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnDestroy_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_BufferCallback stub forwards function calls as expected. |
| TEST_F(Cronet_BufferCallbackTest, TestCreate) { |
| Cronet_BufferCallbackPtr test = |
| Cronet_BufferCallback_CreateWith(TestCronet_BufferCallback_OnDestroy); |
| CHECK(test); |
| Cronet_BufferCallback_SetClientContext(test, this); |
| CHECK(!OnDestroy_called_); |
| |
| Cronet_BufferCallback_Destroy(test); |
| } |
| |
| // Test of Cronet_Runnable interface. |
| class Cronet_RunnableTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_RunnableTest() = default; |
| ~Cronet_RunnableTest() override = default; |
| |
| public: |
| bool Run_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_RunnableTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_Runnable methods for testing. |
| void TestCronet_Runnable_Run(Cronet_RunnablePtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Runnable_GetClientContext(self); |
| auto* test = static_cast<Cronet_RunnableTest*>(client_context); |
| CHECK(test); |
| test->Run_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_Runnable stub forwards function calls as expected. |
| TEST_F(Cronet_RunnableTest, TestCreate) { |
| Cronet_RunnablePtr test = Cronet_Runnable_CreateWith(TestCronet_Runnable_Run); |
| CHECK(test); |
| Cronet_Runnable_SetClientContext(test, this); |
| Cronet_Runnable_Run(test); |
| CHECK(Run_called_); |
| |
| Cronet_Runnable_Destroy(test); |
| } |
| |
| // Test of Cronet_Executor interface. |
| class Cronet_ExecutorTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_ExecutorTest() = default; |
| ~Cronet_ExecutorTest() override = default; |
| |
| public: |
| bool Execute_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_ExecutorTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_Executor methods for testing. |
| void TestCronet_Executor_Execute(Cronet_ExecutorPtr self, |
| Cronet_RunnablePtr command) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Executor_GetClientContext(self); |
| auto* test = static_cast<Cronet_ExecutorTest*>(client_context); |
| CHECK(test); |
| test->Execute_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_Executor stub forwards function calls as expected. |
| TEST_F(Cronet_ExecutorTest, TestCreate) { |
| Cronet_ExecutorPtr test = |
| Cronet_Executor_CreateWith(TestCronet_Executor_Execute); |
| CHECK(test); |
| Cronet_Executor_SetClientContext(test, this); |
| CHECK(!Execute_called_); |
| |
| Cronet_Executor_Destroy(test); |
| } |
| |
| // Test of Cronet_Engine interface. |
| class Cronet_EngineTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_EngineTest() = default; |
| ~Cronet_EngineTest() override = default; |
| |
| public: |
| bool StartWithParams_called_ = false; |
| bool StartNetLogToFile_called_ = false; |
| bool StopNetLog_called_ = false; |
| bool Shutdown_called_ = false; |
| bool GetVersionString_called_ = false; |
| bool GetDefaultUserAgent_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_EngineTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_Engine methods for testing. |
| Cronet_RESULT TestCronet_Engine_StartWithParams(Cronet_EnginePtr self, |
| Cronet_EngineParamsPtr params) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Engine_GetClientContext(self); |
| auto* test = static_cast<Cronet_EngineTest*>(client_context); |
| CHECK(test); |
| test->StartWithParams_called_ = true; |
| |
| return static_cast<Cronet_RESULT>(0); |
| } |
| bool TestCronet_Engine_StartNetLogToFile(Cronet_EnginePtr self, |
| Cronet_String file_name, |
| bool log_all) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Engine_GetClientContext(self); |
| auto* test = static_cast<Cronet_EngineTest*>(client_context); |
| CHECK(test); |
| test->StartNetLogToFile_called_ = true; |
| |
| return static_cast<bool>(0); |
| } |
| void TestCronet_Engine_StopNetLog(Cronet_EnginePtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Engine_GetClientContext(self); |
| auto* test = static_cast<Cronet_EngineTest*>(client_context); |
| CHECK(test); |
| test->StopNetLog_called_ = true; |
| } |
| Cronet_RESULT TestCronet_Engine_Shutdown(Cronet_EnginePtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Engine_GetClientContext(self); |
| auto* test = static_cast<Cronet_EngineTest*>(client_context); |
| CHECK(test); |
| test->Shutdown_called_ = true; |
| |
| return static_cast<Cronet_RESULT>(0); |
| } |
| Cronet_String TestCronet_Engine_GetVersionString(Cronet_EnginePtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Engine_GetClientContext(self); |
| auto* test = static_cast<Cronet_EngineTest*>(client_context); |
| CHECK(test); |
| test->GetVersionString_called_ = true; |
| |
| return static_cast<Cronet_String>(0); |
| } |
| Cronet_String TestCronet_Engine_GetDefaultUserAgent(Cronet_EnginePtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = Cronet_Engine_GetClientContext(self); |
| auto* test = static_cast<Cronet_EngineTest*>(client_context); |
| CHECK(test); |
| test->GetDefaultUserAgent_called_ = true; |
| |
| return static_cast<Cronet_String>(0); |
| } |
| } // namespace |
| |
| // Test that Cronet_Engine stub forwards function calls as expected. |
| TEST_F(Cronet_EngineTest, TestCreate) { |
| Cronet_EnginePtr test = Cronet_Engine_CreateWith( |
| TestCronet_Engine_StartWithParams, TestCronet_Engine_StartNetLogToFile, |
| TestCronet_Engine_StopNetLog, TestCronet_Engine_Shutdown, |
| TestCronet_Engine_GetVersionString, |
| TestCronet_Engine_GetDefaultUserAgent); |
| CHECK(test); |
| Cronet_Engine_SetClientContext(test, this); |
| CHECK(!StartWithParams_called_); |
| CHECK(!StartNetLogToFile_called_); |
| Cronet_Engine_StopNetLog(test); |
| CHECK(StopNetLog_called_); |
| Cronet_Engine_Shutdown(test); |
| CHECK(Shutdown_called_); |
| Cronet_Engine_GetVersionString(test); |
| CHECK(GetVersionString_called_); |
| Cronet_Engine_GetDefaultUserAgent(test); |
| CHECK(GetDefaultUserAgent_called_); |
| |
| Cronet_Engine_Destroy(test); |
| } |
| |
| // Test of Cronet_UrlRequestStatusListener interface. |
| class Cronet_UrlRequestStatusListenerTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_UrlRequestStatusListenerTest() = default; |
| ~Cronet_UrlRequestStatusListenerTest() override = default; |
| |
| public: |
| bool OnStatus_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_UrlRequestStatusListenerTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_UrlRequestStatusListener methods for testing. |
| void TestCronet_UrlRequestStatusListener_OnStatus( |
| Cronet_UrlRequestStatusListenerPtr self, |
| Cronet_UrlRequestStatusListener_Status status) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestStatusListener_GetClientContext(self); |
| auto* test = |
| static_cast<Cronet_UrlRequestStatusListenerTest*>(client_context); |
| CHECK(test); |
| test->OnStatus_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_UrlRequestStatusListener stub forwards function calls as |
| // expected. |
| TEST_F(Cronet_UrlRequestStatusListenerTest, TestCreate) { |
| Cronet_UrlRequestStatusListenerPtr test = |
| Cronet_UrlRequestStatusListener_CreateWith( |
| TestCronet_UrlRequestStatusListener_OnStatus); |
| CHECK(test); |
| Cronet_UrlRequestStatusListener_SetClientContext(test, this); |
| CHECK(!OnStatus_called_); |
| |
| Cronet_UrlRequestStatusListener_Destroy(test); |
| } |
| |
| // Test of Cronet_UrlRequestCallback interface. |
| class Cronet_UrlRequestCallbackTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_UrlRequestCallbackTest() = default; |
| ~Cronet_UrlRequestCallbackTest() override = default; |
| |
| public: |
| bool OnRedirectReceived_called_ = false; |
| bool OnResponseStarted_called_ = false; |
| bool OnReadCompleted_called_ = false; |
| bool OnSucceeded_called_ = false; |
| bool OnFailed_called_ = false; |
| bool OnCanceled_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_UrlRequestCallbackTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_UrlRequestCallback methods for testing. |
| void TestCronet_UrlRequestCallback_OnRedirectReceived( |
| Cronet_UrlRequestCallbackPtr self, |
| Cronet_UrlRequestPtr request, |
| Cronet_UrlResponseInfoPtr info, |
| Cronet_String new_location_url) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnRedirectReceived_called_ = true; |
| } |
| void TestCronet_UrlRequestCallback_OnResponseStarted( |
| Cronet_UrlRequestCallbackPtr self, |
| Cronet_UrlRequestPtr request, |
| Cronet_UrlResponseInfoPtr info) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnResponseStarted_called_ = true; |
| } |
| void TestCronet_UrlRequestCallback_OnReadCompleted( |
| Cronet_UrlRequestCallbackPtr self, |
| Cronet_UrlRequestPtr request, |
| Cronet_UrlResponseInfoPtr info, |
| Cronet_BufferPtr buffer, |
| uint64_t bytes_read) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnReadCompleted_called_ = true; |
| } |
| void TestCronet_UrlRequestCallback_OnSucceeded( |
| Cronet_UrlRequestCallbackPtr self, |
| Cronet_UrlRequestPtr request, |
| Cronet_UrlResponseInfoPtr info) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnSucceeded_called_ = true; |
| } |
| void TestCronet_UrlRequestCallback_OnFailed(Cronet_UrlRequestCallbackPtr self, |
| Cronet_UrlRequestPtr request, |
| Cronet_UrlResponseInfoPtr info, |
| Cronet_ErrorPtr error) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnFailed_called_ = true; |
| } |
| void TestCronet_UrlRequestCallback_OnCanceled(Cronet_UrlRequestCallbackPtr self, |
| Cronet_UrlRequestPtr request, |
| Cronet_UrlResponseInfoPtr info) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequestCallback_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestCallbackTest*>(client_context); |
| CHECK(test); |
| test->OnCanceled_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_UrlRequestCallback stub forwards function calls as expected. |
| TEST_F(Cronet_UrlRequestCallbackTest, TestCreate) { |
| Cronet_UrlRequestCallbackPtr test = Cronet_UrlRequestCallback_CreateWith( |
| TestCronet_UrlRequestCallback_OnRedirectReceived, |
| TestCronet_UrlRequestCallback_OnResponseStarted, |
| TestCronet_UrlRequestCallback_OnReadCompleted, |
| TestCronet_UrlRequestCallback_OnSucceeded, |
| TestCronet_UrlRequestCallback_OnFailed, |
| TestCronet_UrlRequestCallback_OnCanceled); |
| CHECK(test); |
| Cronet_UrlRequestCallback_SetClientContext(test, this); |
| CHECK(!OnRedirectReceived_called_); |
| CHECK(!OnResponseStarted_called_); |
| CHECK(!OnReadCompleted_called_); |
| CHECK(!OnSucceeded_called_); |
| CHECK(!OnFailed_called_); |
| CHECK(!OnCanceled_called_); |
| |
| Cronet_UrlRequestCallback_Destroy(test); |
| } |
| |
| // Test of Cronet_UploadDataSink interface. |
| class Cronet_UploadDataSinkTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_UploadDataSinkTest() = default; |
| ~Cronet_UploadDataSinkTest() override = default; |
| |
| public: |
| bool OnReadSucceeded_called_ = false; |
| bool OnReadError_called_ = false; |
| bool OnRewindSucceeded_called_ = false; |
| bool OnRewindError_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_UploadDataSinkTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_UploadDataSink methods for testing. |
| void TestCronet_UploadDataSink_OnReadSucceeded(Cronet_UploadDataSinkPtr self, |
| uint64_t bytes_read, |
| bool final_chunk) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataSink_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataSinkTest*>(client_context); |
| CHECK(test); |
| test->OnReadSucceeded_called_ = true; |
| } |
| void TestCronet_UploadDataSink_OnReadError(Cronet_UploadDataSinkPtr self, |
| Cronet_String error_message) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataSink_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataSinkTest*>(client_context); |
| CHECK(test); |
| test->OnReadError_called_ = true; |
| } |
| void TestCronet_UploadDataSink_OnRewindSucceeded( |
| Cronet_UploadDataSinkPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataSink_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataSinkTest*>(client_context); |
| CHECK(test); |
| test->OnRewindSucceeded_called_ = true; |
| } |
| void TestCronet_UploadDataSink_OnRewindError(Cronet_UploadDataSinkPtr self, |
| Cronet_String error_message) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataSink_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataSinkTest*>(client_context); |
| CHECK(test); |
| test->OnRewindError_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_UploadDataSink stub forwards function calls as expected. |
| TEST_F(Cronet_UploadDataSinkTest, TestCreate) { |
| Cronet_UploadDataSinkPtr test = Cronet_UploadDataSink_CreateWith( |
| TestCronet_UploadDataSink_OnReadSucceeded, |
| TestCronet_UploadDataSink_OnReadError, |
| TestCronet_UploadDataSink_OnRewindSucceeded, |
| TestCronet_UploadDataSink_OnRewindError); |
| CHECK(test); |
| Cronet_UploadDataSink_SetClientContext(test, this); |
| CHECK(!OnReadSucceeded_called_); |
| CHECK(!OnReadError_called_); |
| Cronet_UploadDataSink_OnRewindSucceeded(test); |
| CHECK(OnRewindSucceeded_called_); |
| CHECK(!OnRewindError_called_); |
| |
| Cronet_UploadDataSink_Destroy(test); |
| } |
| |
| // Test of Cronet_UploadDataProvider interface. |
| class Cronet_UploadDataProviderTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_UploadDataProviderTest() = default; |
| ~Cronet_UploadDataProviderTest() override = default; |
| |
| public: |
| bool GetLength_called_ = false; |
| bool Read_called_ = false; |
| bool Rewind_called_ = false; |
| bool Close_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_UploadDataProviderTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_UploadDataProvider methods for testing. |
| int64_t TestCronet_UploadDataProvider_GetLength( |
| Cronet_UploadDataProviderPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataProvider_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataProviderTest*>(client_context); |
| CHECK(test); |
| test->GetLength_called_ = true; |
| |
| return static_cast<int64_t>(0); |
| } |
| void TestCronet_UploadDataProvider_Read( |
| Cronet_UploadDataProviderPtr self, |
| Cronet_UploadDataSinkPtr upload_data_sink, |
| Cronet_BufferPtr buffer) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataProvider_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataProviderTest*>(client_context); |
| CHECK(test); |
| test->Read_called_ = true; |
| } |
| void TestCronet_UploadDataProvider_Rewind( |
| Cronet_UploadDataProviderPtr self, |
| Cronet_UploadDataSinkPtr upload_data_sink) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataProvider_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataProviderTest*>(client_context); |
| CHECK(test); |
| test->Rewind_called_ = true; |
| } |
| void TestCronet_UploadDataProvider_Close(Cronet_UploadDataProviderPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UploadDataProvider_GetClientContext(self); |
| auto* test = static_cast<Cronet_UploadDataProviderTest*>(client_context); |
| CHECK(test); |
| test->Close_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_UploadDataProvider stub forwards function calls as expected. |
| TEST_F(Cronet_UploadDataProviderTest, TestCreate) { |
| Cronet_UploadDataProviderPtr test = Cronet_UploadDataProvider_CreateWith( |
| TestCronet_UploadDataProvider_GetLength, |
| TestCronet_UploadDataProvider_Read, TestCronet_UploadDataProvider_Rewind, |
| TestCronet_UploadDataProvider_Close); |
| CHECK(test); |
| Cronet_UploadDataProvider_SetClientContext(test, this); |
| Cronet_UploadDataProvider_GetLength(test); |
| CHECK(GetLength_called_); |
| CHECK(!Read_called_); |
| CHECK(!Rewind_called_); |
| Cronet_UploadDataProvider_Close(test); |
| CHECK(Close_called_); |
| |
| Cronet_UploadDataProvider_Destroy(test); |
| } |
| |
| // Test of Cronet_UrlRequest interface. |
| class Cronet_UrlRequestTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_UrlRequestTest() = default; |
| ~Cronet_UrlRequestTest() override = default; |
| |
| public: |
| bool InitWithParams_called_ = false; |
| bool Start_called_ = false; |
| bool FollowRedirect_called_ = false; |
| bool Read_called_ = false; |
| bool Cancel_called_ = false; |
| bool IsDone_called_ = false; |
| bool GetStatus_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_UrlRequestTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_UrlRequest methods for testing. |
| Cronet_RESULT TestCronet_UrlRequest_InitWithParams( |
| Cronet_UrlRequestPtr self, |
| Cronet_EnginePtr engine, |
| Cronet_String url, |
| Cronet_UrlRequestParamsPtr params, |
| Cronet_UrlRequestCallbackPtr callback, |
| Cronet_ExecutorPtr executor) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->InitWithParams_called_ = true; |
| |
| return static_cast<Cronet_RESULT>(0); |
| } |
| Cronet_RESULT TestCronet_UrlRequest_Start(Cronet_UrlRequestPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->Start_called_ = true; |
| |
| return static_cast<Cronet_RESULT>(0); |
| } |
| Cronet_RESULT TestCronet_UrlRequest_FollowRedirect(Cronet_UrlRequestPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->FollowRedirect_called_ = true; |
| |
| return static_cast<Cronet_RESULT>(0); |
| } |
| Cronet_RESULT TestCronet_UrlRequest_Read(Cronet_UrlRequestPtr self, |
| Cronet_BufferPtr buffer) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->Read_called_ = true; |
| |
| return static_cast<Cronet_RESULT>(0); |
| } |
| void TestCronet_UrlRequest_Cancel(Cronet_UrlRequestPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->Cancel_called_ = true; |
| } |
| bool TestCronet_UrlRequest_IsDone(Cronet_UrlRequestPtr self) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->IsDone_called_ = true; |
| |
| return static_cast<bool>(0); |
| } |
| void TestCronet_UrlRequest_GetStatus( |
| Cronet_UrlRequestPtr self, |
| Cronet_UrlRequestStatusListenerPtr listener) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_UrlRequest_GetClientContext(self); |
| auto* test = static_cast<Cronet_UrlRequestTest*>(client_context); |
| CHECK(test); |
| test->GetStatus_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_UrlRequest stub forwards function calls as expected. |
| TEST_F(Cronet_UrlRequestTest, TestCreate) { |
| Cronet_UrlRequestPtr test = Cronet_UrlRequest_CreateWith( |
| TestCronet_UrlRequest_InitWithParams, TestCronet_UrlRequest_Start, |
| TestCronet_UrlRequest_FollowRedirect, TestCronet_UrlRequest_Read, |
| TestCronet_UrlRequest_Cancel, TestCronet_UrlRequest_IsDone, |
| TestCronet_UrlRequest_GetStatus); |
| CHECK(test); |
| Cronet_UrlRequest_SetClientContext(test, this); |
| CHECK(!InitWithParams_called_); |
| Cronet_UrlRequest_Start(test); |
| CHECK(Start_called_); |
| Cronet_UrlRequest_FollowRedirect(test); |
| CHECK(FollowRedirect_called_); |
| CHECK(!Read_called_); |
| Cronet_UrlRequest_Cancel(test); |
| CHECK(Cancel_called_); |
| Cronet_UrlRequest_IsDone(test); |
| CHECK(IsDone_called_); |
| CHECK(!GetStatus_called_); |
| |
| Cronet_UrlRequest_Destroy(test); |
| } |
| |
| // Test of Cronet_RequestFinishedInfoListener interface. |
| class Cronet_RequestFinishedInfoListenerTest : public ::testing::Test { |
| protected: |
| void SetUp() override {} |
| |
| void TearDown() override {} |
| |
| Cronet_RequestFinishedInfoListenerTest() = default; |
| ~Cronet_RequestFinishedInfoListenerTest() override = default; |
| |
| public: |
| bool OnRequestFinished_called_ = false; |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(Cronet_RequestFinishedInfoListenerTest); |
| }; |
| |
| namespace { |
| // Implementation of Cronet_RequestFinishedInfoListener methods for testing. |
| void TestCronet_RequestFinishedInfoListener_OnRequestFinished( |
| Cronet_RequestFinishedInfoListenerPtr self, |
| Cronet_RequestFinishedInfoPtr request_info) { |
| CHECK(self); |
| Cronet_ClientContext client_context = |
| Cronet_RequestFinishedInfoListener_GetClientContext(self); |
| auto* test = |
| static_cast<Cronet_RequestFinishedInfoListenerTest*>(client_context); |
| CHECK(test); |
| test->OnRequestFinished_called_ = true; |
| } |
| } // namespace |
| |
| // Test that Cronet_RequestFinishedInfoListener stub forwards function calls as |
| // expected. |
| TEST_F(Cronet_RequestFinishedInfoListenerTest, TestCreate) { |
| Cronet_RequestFinishedInfoListenerPtr test = |
| Cronet_RequestFinishedInfoListener_CreateWith( |
| TestCronet_RequestFinishedInfoListener_OnRequestFinished); |
| CHECK(test); |
| Cronet_RequestFinishedInfoListener_SetClientContext(test, this); |
| CHECK(!OnRequestFinished_called_); |
| |
| Cronet_RequestFinishedInfoListener_Destroy(test); |
| } |