11e934351Sopenharmony_ci/* 21e934351Sopenharmony_ci * Copyright (c) 2023-2024 Huawei Device Co., Ltd. 31e934351Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 41e934351Sopenharmony_ci * you may not use this file except in compliance with the License. 51e934351Sopenharmony_ci * You may obtain a copy of the License at 61e934351Sopenharmony_ci * 71e934351Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 81e934351Sopenharmony_ci * 91e934351Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 101e934351Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 111e934351Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 121e934351Sopenharmony_ci * See the License for the specific language governing permissions and 131e934351Sopenharmony_ci * limitations under the License. 141e934351Sopenharmony_ci */ 151e934351Sopenharmony_ci 161e934351Sopenharmony_ci 171e934351Sopenharmony_ci#include <cstring> 181e934351Sopenharmony_ci#include "gtest/gtest.h" 191e934351Sopenharmony_ci 201e934351Sopenharmony_ci#ifdef GTEST_API_ 211e934351Sopenharmony_ci#define private public 221e934351Sopenharmony_ci#endif 231e934351Sopenharmony_ci 241e934351Sopenharmony_ci#include "http_exec.h" 251e934351Sopenharmony_ci#include "http_async_work.h" 261e934351Sopenharmony_ci#include "netstack_log.h" 271e934351Sopenharmony_ci#include "constant.h" 281e934351Sopenharmony_ci#include "secure_char.h" 291e934351Sopenharmony_ci#include "curl/curl.h" 301e934351Sopenharmony_ci 311e934351Sopenharmony_ciusing namespace OHOS::NetStack; 321e934351Sopenharmony_ciusing namespace OHOS::NetStack::Http; 331e934351Sopenharmony_ci 341e934351Sopenharmony_ciclass HttpExecTest : public testing::Test { 351e934351Sopenharmony_cipublic: 361e934351Sopenharmony_ci static void SetUpTestCase() {} 371e934351Sopenharmony_ci 381e934351Sopenharmony_ci static void TearDownTestCase() {} 391e934351Sopenharmony_ci 401e934351Sopenharmony_ci virtual void SetUp() {} 411e934351Sopenharmony_ci 421e934351Sopenharmony_ci virtual void TearDown() {} 431e934351Sopenharmony_ci}; 441e934351Sopenharmony_ci 451e934351Sopenharmony_cinamespace { 461e934351Sopenharmony_ciusing namespace std; 471e934351Sopenharmony_ciusing namespace testing::ext; 481e934351Sopenharmony_ci 491e934351Sopenharmony_ci 501e934351Sopenharmony_ciHWTEST_F(HttpExecTest, SetOption001, TestSize.Level1) 511e934351Sopenharmony_ci{ 521e934351Sopenharmony_ci auto handle = curl_easy_init(); 531e934351Sopenharmony_ci 541e934351Sopenharmony_ci napi_env env = nullptr; 551e934351Sopenharmony_ci EventManager manager; 561e934351Sopenharmony_ci OHOS::NetStack::Http::RequestContext context(env, &manager); 571e934351Sopenharmony_ci 581e934351Sopenharmony_ci EXPECT_TRUE(HttpExec::SetOption(handle, &context, context.GetCurlHeaderList())); 591e934351Sopenharmony_ci} 601e934351Sopenharmony_ci 611e934351Sopenharmony_ciHWTEST_F(HttpExecTest, SetServerSSLCertOption001, TestSize.Level1) 621e934351Sopenharmony_ci{ 631e934351Sopenharmony_ci auto handle = curl_easy_init(); 641e934351Sopenharmony_ci 651e934351Sopenharmony_ci napi_env env = nullptr; 661e934351Sopenharmony_ci EventManager manager; 671e934351Sopenharmony_ci OHOS::NetStack::Http::RequestContext context(env, &manager); 681e934351Sopenharmony_ci 691e934351Sopenharmony_ci EXPECT_TRUE(HttpExec::SetServerSSLCertOption(handle, &context)); 701e934351Sopenharmony_ci} 711e934351Sopenharmony_ci 721e934351Sopenharmony_ci} // namespace