/* * Copyright (c) 2013-2019 Huawei Technologies Co., Ltd. All rights reserved. * Copyright (c) 2020-2021 Huawei Device Co., Ltd. All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * * 1. Redistributions of source code must retain the above copyright notice, this list of * conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright notice, this list * of conditions and the following disclaimer in the documentation and/or other materials * provided with the distribution. * * 3. Neither the name of the copyright holder nor the names of its contributors may be used * to endorse or promote products derived from this software without specific prior written * permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "stdio.h" #include #include #include "It_posix_pthread.h" pthread_key_t g_key; pthread_key_t g_key1; pthread_key_t g_key2; pthread_key_t g_pthreadKeyTest[PTHREAD_KEY_NUM]; pthread_t g_newTh; pthread_t g_newTh2; UINT32 g_taskMaxNum = LOSCFG_BASE_CORE_TSK_CONFIG; pthread_once_t g_onceControl = PTHREAD_ONCE_INIT; pthread_cond_t g_pthreadCondTest1 = PTHREAD_COND_INITIALIZER; pthread_mutex_t g_pthreadMutexTest1 = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_t g_pthreadMutexTest2 = PTHREAD_MUTEX_INITIALIZER; INT32 g_startNum = 0; INT32 g_wakenNum = 0; INT32 g_t1Start = 0; INT32 g_signaled = 0; INT32 g_wokenUp = -1; INT32 g_lowDone = -1; INT32 g_pthreadSem = 0; /* Manual semaphore */ INT32 g_pthreadScopeValue = 0; INT32 g_pthreadSchedInherit = 0; INT32 g_pthreadSchedPolicy = 0; struct testdata g_td; sem_t g_pthreadSem1; sem_t g_pthreadSem2; __scenario g_scenarii[] = { CASE_POS(0, 0, 0, 0, 0, 0, 0, 0, (char *)"default"), CASE_POS(1, 0, 0, 0, 0, 0, 0, 0, (char *)"detached"), CASE_POS(0, 1, 0, 0, 0, 0, 0, 0, (char *)"Explicit sched"), CASE_UNK(0, 0, 1, 0, 0, 0, 0, 0, (char *)"FIFO Policy"), CASE_UNK(0, 0, 2, 0, 0, 0, 0, 0, (char *)"RR Policy"), CASE_UNK(0, 0, 0, 1, 0, 0, 0, 0, (char *)"Max sched param"), CASE_UNK(0, 0, 0, -1, 0, 0, 0, 0, (char *)"Min sched param"), CASE_POS(0, 0, 0, 0, 1, 0, 0, 0, (char *)"Alternative contension scope"), CASE_POS(0, 0, 0, 0, 0, 1, 0, 0, (char *)"Alternative stack"), CASE_POS(0, 0, 0, 0, 0, 0, 1, 0, (char *)"No guard size"), CASE_UNK(0, 0, 0, 0, 0, 0, 2, 0, (char *)"1p guard size"), CASE_POS(0, 0, 0, 0, 0, 0, 0, 1, (char *)"Min stack size"), /* Stack play */ CASE_POS(0, 0, 0, 0, 0, 0, 1, 1, (char *)"Min stack size, no guard"), CASE_UNK(0, 0, 0, 0, 0, 0, 2, 1, (char *)"Min stack size, 1p guard"), CASE_POS(1, 0, 0, 0, 0, 1, 0, 0, (char *)"Detached, Alternative stack"), CASE_POS(1, 0, 0, 0, 0, 0, 1, 1, (char *)"Detached, Min stack size, no guard"), CASE_UNK(1, 0, 0, 0, 0, 0, 2, 1, (char *)"Detached, Min stack size, 1p guard"), }; pthread_t g_pthreadTestTh; VOID ScenarInit(VOID) { INT32 ret = 0; UINT32 i; INT32 old; long pagesize, minstacksize; long tsa, tss, tps; pagesize = sysconf(_SC_PAGESIZE); minstacksize = sysconf(_SC_THREAD_STACK_MIN); tsa = sysconf(_SC_THREAD_ATTR_STACKADDR); tss = sysconf(_SC_THREAD_ATTR_STACKSIZE); tps = sysconf(_SC_THREAD_PRIORITY_SCHEDULING); if (minstacksize % pagesize) ICUNIT_ASSERT_EQUAL_VOID(1, 0, errno); for (i = 0; i < NSCENAR; i++) { ret = pthread_attr_init(&g_scenarii[i].ta); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); if (g_scenarii[i].detached == 1) { ret = pthread_attr_setdetachstate(&g_scenarii[i].ta, PTHREAD_CREATE_DETACHED); ICUNIT_TRACK_EQUAL(ret, PTHREAD_NO_ERROR, ret); ret = pthread_attr_getdetachstate(&g_scenarii[i].ta, &old); ICUNIT_TRACK_EQUAL(ret, PTHREAD_NO_ERROR, ret); ICUNIT_TRACK_EQUAL(old, PTHREAD_CREATE_JOINABLE, old); } /* Sched related attributes */ /* * This routine is dependent on the Thread Execution * Scheduling option */ if (tps > 0) { if (g_scenarii[i].explicitsched == 1) ret = pthread_attr_setinheritsched(&g_scenarii[i].ta, PTHREAD_EXPLICIT_SCHED); else ret = pthread_attr_setinheritsched(&g_scenarii[i].ta, PTHREAD_INHERIT_SCHED); ICUNIT_TRACK_EQUAL(ret, PTHREAD_NO_ERROR, ret); } if (tps > 0) { if (g_scenarii[i].schedpolicy == 1) ret = pthread_attr_setschedpolicy(&g_scenarii[i].ta, SCHED_FIFO); if (g_scenarii[i].schedpolicy == 2) ret = pthread_attr_setschedpolicy(&g_scenarii[i].ta, SCHED_RR); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); if (g_scenarii[i].schedparam != 0) { struct sched_param sp; ret = pthread_attr_getschedpolicy(&g_scenarii[i].ta, &old); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); if (g_scenarii[i].schedparam == 1) sp.sched_priority = sched_get_priority_min(old); if (g_scenarii[i].schedparam == -1) sp.sched_priority = sched_get_priority_max(old); ret = pthread_attr_setschedparam(&g_scenarii[i].ta, &sp); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); } if (tps > 0) { ret = pthread_attr_getscope(&g_scenarii[i].ta, &old); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); if (g_scenarii[i].altscope != 0) { if (old == PTHREAD_SCOPE_PROCESS) old = PTHREAD_SCOPE_SYSTEM; else old = PTHREAD_SCOPE_PROCESS; ret = pthread_attr_setscope(&g_scenarii[i].ta, old); } } if ((tss > 0) && (tsa > 0)) { if (g_scenarii[i].altstack != 0) { g_scenarii[i].bottom = malloc(minstacksize + pagesize); ICUNIT_TRACK_NOT_EQUAL(g_scenarii[i].bottom, NULL, g_scenarii[i].bottom); } } if (tss > 0) { if (g_scenarii[i].altsize != 0) { ret = pthread_attr_setstacksize(&g_scenarii[i].ta, minstacksize); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); } } ret = sem_init(&g_scenarii[i].sem, 0, 0); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); } } } /* * This function will free all resources consumed * in the scenar_init() routine */ VOID ScenarFini(VOID) { INT32 ret = 0; UINT32 i; for (i = 0; i < NSCENAR; i++) { if (g_scenarii[i].bottom != NULL) free(g_scenarii[i].bottom); ret = sem_destroy(&g_scenarii[i].sem); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); ret = pthread_attr_destroy(&g_scenarii[i].ta); ICUNIT_ASSERT_EQUAL_VOID(ret, PTHREAD_NO_ERROR, ret); } } /* * return value of pthread_self() is 0 when * pthread create from LOS_TaskCreate() */ pthread_t TestPthreadSelf(void) { pthread_t tid = pthread_self(); return tid; } UINT32 TaskCountGetTest(VOID) { // not implemented return 0; } using namespace testing::ext; namespace OHOS { class PosixPthreadTest : public testing::Test { public: static void SetUpTestCase(void) {} static void TearDownTestCase(void) {} }; #if defined(LOSCFG_USER_TEST_SMOKE) /** * @tc.name: IT_POSIX_PTHREAD_003 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread003, TestSize.Level0) { ItPosixPthread003(); } /** * @tc.name: IT_POSIX_PTHREAD_004 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread004, TestSize.Level0) { ItPosixPthread004(); } /** * @tc.name: IT_POSIX_PTHREAD_005 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread005, TestSize.Level0) { ItPosixPthread005(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_006 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread006, TestSize.Level0) { ItPosixPthread006(); } /** * @tc.name: IT_POSIX_PTHREAD_018 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread018, TestSize.Level0) { ItPosixPthread018(); } /** * @tc.name: IT_POSIX_PTHREAD_019 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread019, TestSize.Level0) { ItPosixPthread019(); } /** * @tc.name: IT_POSIX_PTHREAD_020 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread020, TestSize.Level0) { ItPosixPthread020(); // pthread_key_delete } /** * @tc.name: IT_POSIX_PTHREAD_021 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread021, TestSize.Level0) { ItPosixPthread021(); } /** * @tc.name: IT_POSIX_PTHREAD_022 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread022, TestSize.Level0) { ItPosixPthread022(); // pthread_cancel } /* * * @tc.name: IT_POSIX_PTHREAD_203 * @tc.desc: function for pthread concurrency * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread203, TestSize.Level0) { ItPosixPthread203(); } #endif #if defined(LOSCFG_USER_TEST_FULL) /** * @tc.name: IT_POSIX_PTHREAD_001 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread001, TestSize.Level0) { ItPosixPthread001(); } /** * @tc.name: IT_POSIX_PTHREAD_002 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread002, TestSize.Level0) { ItPosixPthread002(); } /** * @tc.name: IT_POSIX_PTHREAD_007 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread007, TestSize.Level0) { ItPosixPthread007(); } /** * @tc.name: IT_POSIX_PTHREAD_010 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread010, TestSize.Level0) { ItPosixPthread010(); } /** * @tc.name: IT_POSIX_PTHREAD_011 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread011, TestSize.Level0) { ItPosixPthread011(); } /** * @tc.name: IT_POSIX_PTHREAD_013 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread013, TestSize.Level0) { ItPosixPthread013(); } /** * @tc.name: IT_POSIX_PTHREAD_023 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread023, TestSize.Level0) { ItPosixPthread023(); } /** * @tc.name: IT_POSIX_PTHREAD_025 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread025, TestSize.Level0) { ItPosixPthread025(); } /** * @tc.name: IT_POSIX_PTHREAD_026 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread026, TestSize.Level0) { ItPosixPthread026(); } /** * @tc.name: IT_POSIX_PTHREAD_027 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread027, TestSize.Level0) { ItPosixPthread027(); } /** * @tc.name: IT_POSIX_PTHREAD_028 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread028, TestSize.Level0) { ItPosixPthread028(); } /** * @tc.name: IT_POSIX_PTHREAD_029 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread029, TestSize.Level0) { ItPosixPthread029(); } /** * @tc.name: IT_POSIX_PTHREAD_030 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread030, TestSize.Level0) { ItPosixPthread030(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_031 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread031, TestSize.Level0) { ItPosixPthread031(); } /** * @tc.name: IT_POSIX_PTHREAD_034 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread034, TestSize.Level0) { ItPosixPthread034(); } /** * @tc.name: IT_POSIX_PTHREAD_035 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread035, TestSize.Level0) { ItPosixPthread035(); } /** * @tc.name: IT_POSIX_PTHREAD_039 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread039, TestSize.Level0) { ItPosixPthread039(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_040 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread040, TestSize.Level0) { ItPosixPthread040(); } /** * @tc.name: IT_POSIX_PTHREAD_042 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread042, TestSize.Level0) { ItPosixPthread042(); } /** * @tc.name: IT_POSIX_PTHREAD_044 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread044, TestSize.Level0) { ItPosixPthread044(); } /** * @tc.name: IT_POSIX_PTHREAD_045 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread045, TestSize.Level0) { ItPosixPthread045(); } /** * @tc.name: IT_POSIX_PTHREAD_046 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread046, TestSize.Level0) { ItPosixPthread046(); } /** * @tc.name: IT_POSIX_PTHREAD_051 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread051, TestSize.Level0) { ItPosixPthread051(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_052 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread052, TestSize.Level0) { ItPosixPthread052(); // pthread_key_delete } /** * @tc.name: IT_POSIX_PTHREAD_053 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread053, TestSize.Level0) { ItPosixPthread053(); // pthread_key_delete } /** * @tc.name: IT_POSIX_PTHREAD_054 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread054, TestSize.Level0) { ItPosixPthread054(); // pthread_key_delete } /** * @tc.name: IT_POSIX_PTHREAD_055 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread055, TestSize.Level0) { ItPosixPthread055(); // pthread_key_delete and pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_057 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread057, TestSize.Level0) { ItPosixPthread057(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_059 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread059, TestSize.Level0) { ItPosixPthread059(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_060 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread060, TestSize.Level0) { ItPosixPthread060(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_069 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread069, TestSize.Level0) { ItPosixPthread069(); } /** * @tc.name: IT_POSIX_PTHREAD_070 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread070, TestSize.Level0) { ItPosixPthread070(); // bug:pthread_cond_init } /** * @tc.name: IT_POSIX_PTHREAD_071 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread071, TestSize.Level0) { ItPosixPthread071(); } /** * @tc.name: IT_POSIX_PTHREAD_072 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread072, TestSize.Level0) { ItPosixPthread072(); // pthread_cond_destroy doesn't fully support } /** * @tc.name: IT_POSIX_PTHREAD_073 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread073, TestSize.Level0) { ItPosixPthread073(); } /** * @tc.name: IT_POSIX_PTHREAD_074 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread074, TestSize.Level0) { ItPosixPthread074(); } /** * @tc.name: IT_POSIX_PTHREAD_078 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread078, TestSize.Level0) { ItPosixPthread078(); } /** * @tc.name: IT_POSIX_PTHREAD_079 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread079, TestSize.Level0) { ItPosixPthread079(); } /** * @tc.name: IT_POSIX_PTHREAD_080 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread080, TestSize.Level0) { ItPosixPthread080(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_081 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread081, TestSize.Level0) { ItPosixPthread081(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_082 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread082, TestSize.Level0) { ItPosixPthread082(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_083 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread083, TestSize.Level0) { ItPosixPthread083(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_084 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread084, TestSize.Level0) { ItPosixPthread084(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_085 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread085, TestSize.Level0) { ItPosixPthread085(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_087 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread087, TestSize.Level0) { ItPosixPthread087(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_088 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread088, TestSize.Level0) { ItPosixPthread088(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_089 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread089, TestSize.Level0) { ItPosixPthread089(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_090 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread090, TestSize.Level0) { ItPosixPthread090(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_092 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread092, TestSize.Level0) { ItPosixPthread092(); // pthread_cond } /** * @tc.name: IT_POSIX_PTHREAD_091 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread091, TestSize.Level0) { ItPosixPthread091(); // pthread_cancel } #ifndef LOSCFG_USER_TEST_SMP /** * @tc.name: IT_POSIX_PTHREAD_094 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread094, TestSize.Level0) { ItPosixPthread094(); // pthread_cancel } #endif /** * @tc.name: IT_POSIX_PTHREAD_095 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread095, TestSize.Level0) { ItPosixPthread095(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_106 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread106, TestSize.Level0) { ItPosixPthread106(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_107 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread107, TestSize.Level0) { ItPosixPthread107(); } /** * @tc.name: IT_POSIX_PTHREAD_116 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread116, TestSize.Level0) { ItPosixPthread116(); } /** * @tc.name: IT_POSIX_PTHREAD_123 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread123, TestSize.Level0) { ItPosixPthread123(); } /** * @tc.name: IT_POSIX_PTHREAD_124 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread124, TestSize.Level0) { ItPosixPthread124(); } /** * @tc.name: IT_POSIX_PTHREAD_125 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread125, TestSize.Level0) { ItPosixPthread125(); } /** * @tc.name: IT_POSIX_PTHREAD_127 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread127, TestSize.Level0) { ItPosixPthread127(); } /** * @tc.name: IT_POSIX_PTHREAD_129 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread129, TestSize.Level0) { ItPosixPthread129(); } /** * @tc.name: IT_POSIX_PTHREAD_132 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread132, TestSize.Level0) { ItPosixPthread132(); } /** * @tc.name: IT_POSIX_PTHREAD_133 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread133, TestSize.Level0) { ItPosixPthread133(); } /** * @tc.name: IT_POSIX_PTHREAD_134 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread134, TestSize.Level0) { ItPosixPthread134(); } /** * @tc.name: IT_POSIX_PTHREAD_136 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread136, TestSize.Level0) { ItPosixPthread136(); } /** * @tc.name: IT_POSIX_PTHREAD_138 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread138, TestSize.Level0) { ItPosixPthread138(); } /** * @tc.name: IT_POSIX_PTHREAD_141 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread141, TestSize.Level0) { ItPosixPthread141(); } /** * @tc.name: IT_POSIX_PTHREAD_142 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread142, TestSize.Level0) { ItPosixPthread142(); } /** * @tc.name: IT_POSIX_PTHREAD_144 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread144, TestSize.Level0) { ItPosixPthread144(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_152 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread152, TestSize.Level0) { ItPosixPthread152(); } /** * @tc.name: IT_POSIX_PTHREAD_154 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread154, TestSize.Level0) { ItPosixPthread154(); } /** * @tc.name: IT_POSIX_PTHREAD_166 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread166, TestSize.Level0) { ItPosixPthread166(); } /** * @tc.name: IT_POSIX_PTHREAD_167 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread167, TestSize.Level0) { ItPosixPthread167(); } /** * @tc.name: IT_POSIX_PTHREAD_173 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread173, TestSize.Level0) { ItPosixPthread173(); } /** * @tc.name: IT_POSIX_PTHREAD_175 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread175, TestSize.Level0) { ItPosixPthread175(); } /** * @tc.name: IT_POSIX_PTHREAD_176 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread176, TestSize.Level0) { ItPosixPthread176(); } /** * @tc.name: IT_POSIX_PTHREAD_177 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread177, TestSize.Level0) { ItPosixPthread177(); } /** * @tc.name: IT_POSIX_PTHREAD_182 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread182, TestSize.Level0) { ItPosixPthread182(); } /** * @tc.name: IT_POSIX_PTHREAD_185 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread185, TestSize.Level0) { ItPosixPthread185(); } /** * @tc.name: IT_POSIX_PTHREAD_186 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread186, TestSize.Level0) { ItPosixPthread186(); } /** * @tc.name: IT_POSIX_PTHREAD_187 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread187, TestSize.Level0) { ItPosixPthread187(); } /** * @tc.name: IT_POSIX_PTHREAD_188 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread188, TestSize.Level0) { ItPosixPthread188(); } /** * @tc.name: IT_POSIX_PTHREAD_193 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread193, TestSize.Level0) { ItPosixPthread193(); } /** * @tc.name: IT_POSIX_PTHREAD_194 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread194, TestSize.Level0) { ItPosixPthread194(); } /** * @tc.name: IT_POSIX_PTHREAD_200 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread200, TestSize.Level0) { ItPosixPthread200(); } /** * @tc.name: IT_POSIX_PTHREAD_204 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread204, TestSize.Level0) { ItPosixPthread204(); } /** * @tc.name: IT_POSIX_PTHREAD_205 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread205, TestSize.Level0) { ItPosixPthread205(); } /** * @tc.name: IT_POSIX_PTHREAD_206 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread206, TestSize.Level0) { ItPosixPthread206(); } /** * @tc.name: IT_POSIX_PTHREAD_209 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread209, TestSize.Level0) { ItPosixPthread209(); } /** * @tc.name: IT_POSIX_PTHREAD_213 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread213, TestSize.Level0) { ItPosixPthread213(); } /** * @tc.name: IT_POSIX_PTHREAD_217 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread217, TestSize.Level0) { ItPosixPthread217(); // phthread_key_create } /** * @tc.name: IT_POSIX_PTHREAD_218 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread218, TestSize.Level0) { ItPosixPthread218(); // phthread_key_create } /** * @tc.name: IT_POSIX_PTHREAD_224 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread224, TestSize.Level0) { ItPosixPthread224(); // pthread_key_create } /** * @tc.name: IT_POSIX_PTHREAD_226 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread226, TestSize.Level0) { ItPosixPthread226(); // pthread_key } /** * @tc.name: IT_POSIX_PTHREAD_233 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread233, TestSize.Level0) { ItPosixPthread233(); // pthread_key and pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_238 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread238, TestSize.Level0) { ItPosixPthread238(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_239 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread239, TestSize.Level0) { ItPosixPthread239(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_240 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread240, TestSize.Level0) { ItPosixPthread240(); // pthread_cancel } /** * @tc.name: IT_POSIX_PTHREAD_241 * @tc.desc: function for PosixPthreadTest * @tc.type: FUNC * @tc.require: AR000EEMQ9 */ HWTEST_F(PosixPthreadTest, ItPosixPthread241, TestSize.Level0) { ItPosixPthread241(); // pthread_cancel } #endif } // namespace OHOS