1/*
2 * Copyright (c) 2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16import { beforeEach, describe, expect, it } from '@ohos/hypium'
17import Utils from './Utils'
18import spawn from 'libspawnndk.so'
19
20export default function muslSpawnTest() {
21  describe('MuslSpawnTest', () => {
22
23    beforeEach(async () => {
24      await Utils.sleep(50)
25    })
26
27    /**
28     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_0100
29     * @tc.name       : testMuslSpawnPosixSpawn001
30     * @tc.desc       : test posixspawn
31     * @tc.size       : MediumTest
32     * @tc.type       : Function
33     * @tc.level      : Level 0
34     */
35    it('testMuslSpawnPosixSpawn001', 0, async (done: Function) => {
36      expect(spawn.posixSpawn()).assertEqual(1);
37      done()
38    });
39
40    /**
41     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWNP_0100
42     * @tc.name       : testMuslSpawnPosixSpawnP001
43     * @tc.desc       : test spawnp
44     * @tc.size       : MediumTest
45     * @tc.type       : Function
46     * @tc.level      : Level 0
47     */
48    it('testMuslSpawnPosixSpawnP001', 0, async (done: Function) => {
49      expect(spawn.posixSpawnP()).assertEqual(1);
50      done()
51    });
52
53    /**
54     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_GET_FLAGS_0100
55     * @tc.name       : testMuslSpawnPosixSpawnAttrGetFlags001
56     * @tc.desc       : test posixspawnattrgetflags
57     * @tc.size       : MediumTest
58     * @tc.type       : Function
59     * @tc.level      : Level 0
60     */
61    it('testMuslSpawnPosixSpawnAttrGetFlags001', 0, async (done: Function) => {
62      expect(spawn.posixSpawnAttrGetFlags()).assertEqual(0);
63      done()
64    });
65
66    /**
67     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_ADD_CLOSE_0100
68     * @tc.name       : testMuslSpawnPosixSpawnAttrAddClose001
69     * @tc.desc       : test posixSpawnFileActionsAddClose
70     * @tc.size       : MediumTest
71     * @tc.type       : Function
72     * @tc.level      : Level 0
73     */
74    it('testMuslSpawnPosixSpawnAttrAddClose001', 0, async (done: Function) => {
75      expect(spawn.posixSpawnFileActionsAddClose()).assertEqual(0);
76      done()
77    });
78
79    /**
80     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_FILE_ACTIONS_ADDUP2_0100
81     * @tc.name       : testMuslSpawnPosixSpawnFileActionsAdddup2001
82     * @tc.desc       : test posixSpawnFileActionsAdddup2
83     * @tc.size       : MediumTest
84     * @tc.type       : Function
85     * @tc.level      : Level 0
86     */
87    it('testMuslSpawnPosixSpawnFileActionsAdddup2001', 0, async (done: Function) => {
88      expect(spawn.posixSpawnFileActionsAdddup2()).assertEqual(0);
89      done()
90    });
91
92    /**
93     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_FILE_ACTIONS_ADD_OPEN_0100
94     * @tc.name       : testMuslSpawnPosixSpawnFileActionsAddOpen001
95     * @tc.desc       : test posixSpawnFileActionsAddopen
96     * @tc.size       : MediumTest
97     * @tc.type       : Function
98     * @tc.level      : Level 0
99     */
100    it('testMuslSpawnPosixSpawnFileActionsAddOpen001', 0, async (done: Function) => {
101      expect(spawn.posixSpawnFileActionsAddopen()).assertEqual(1);
102      done()
103    });
104
105    /**
106     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_FILE_ACTIONS_DESTORY_0100
107     * @tc.name       : testMuslSpawnPosixSpawnFileActionsDestroy001
108     * @tc.desc       : test posixSpawnFileActionsDestroy
109     * @tc.size       : MediumTest
110     * @tc.type       : Function
111     * @tc.level      : Level 0
112     */
113    it('testMuslSpawnPosixSpawnFileActionsDestroy001', 0, async (done: Function) => {
114      expect(spawn.posixSpawnFileActionsDestroy()).assertEqual(0);
115      done()
116    });
117
118    /**
119     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_FILE_ACTIONS_INIT_0100
120     * @tc.name       : testMuslSpawnPosixSpawnFileActionsInit001
121     * @tc.desc       : test posixSpawnFileActionsInit
122     * @tc.size       : MediumTest
123     * @tc.type       : Function
124     * @tc.level      : Level 0
125     */
126    it('testMuslSpawnPosixSpawnFileActionsInit001', 0, async (done: Function) => {
127      expect(spawn.posixSpawnFileActionsInit()).assertEqual(0);
128      done()
129    });
130
131    /**
132     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTRS_DESTORY_0100
133     * @tc.name       : testMuslSpawnPosixSpawnAttrDestroy001
134     * @tc.desc       : test posixSpawnAttrDestroy
135     * @tc.size       : MediumTest
136     * @tc.type       : Function
137     * @tc.level      : Level 0
138     */
139    it('testMuslSpawnPosixSpawnAttrDestroy001', 0, async (done: Function) => {
140      expect(spawn.posixSpawnAttrDestroy()).assertEqual(0);
141      done()
142    });
143
144    /**
145     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTRS_Get_Sched_Policy_0100
146     * @tc.name       : testMuslSpawnPosixSpawnAttrGetSchedPolicy001
147     * @tc.desc       : test posixSpawnAttrGetSchedPolicy
148     * @tc.size       : MediumTest
149     * @tc.type       : Function
150     * @tc.level      : Level 0
151     */
152    it('testMuslSpawnPosixSpawnAttrGetSchedPolicy001', 0, async (done: Function) => {
153      expect(spawn.posixSpawnAttrGetSchedPolicy()).assertEqual(0);
154      done()
155    });
156
157    /**
158     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTRS_Get_Sig_Default_0100
159     * @tc.name       : testMuslSpawnPosixSpawnAttrGetSigDefault001
160     * @tc.desc       : test posixSpawnAttrGetSigDefault
161     * @tc.size       : MediumTest
162     * @tc.type       : Function
163     * @tc.level      : Level 0
164     */
165    it('testMuslSpawnPosixSpawnAttrGetSigDefault001', 0, async (done: Function) => {
166      expect(spawn.posixSpawnAttrGetSigDefault()).assertEqual(0);
167      done()
168    });
169
170    /**
171     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_INIT_0100
172     * @tc.name       : testMuslSpawnPosixSpawnAttrInit001
173     * @tc.desc       : test posixSpawnAttrInit
174     * @tc.size       : MediumTest
175     * @tc.type       : Function
176     * @tc.level      : Level 0
177     */
178    it('testMuslSpawnPosixSpawnAttrInit001', 0, async (done: Function) => {
179      expect(spawn.posixSpawnAttrInit()).assertEqual(0);
180      done()
181    });
182
183    /**
184     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_GET_SIG_MASK_0100
185     * @tc.name       : testMuslSpawnPosixSpawnAttrGetSigMask001
186     * @tc.desc       : test posixSpawnAttrGetSigMask
187     * @tc.size       : MediumTest
188     * @tc.type       : Function
189     * @tc.level      : Level 0
190     */
191    it('testMuslSpawnPosixSpawnAttrGetSigMask001', 0, async (done: Function) => {
192      expect(spawn.posixSpawnAttrGetSigMask()).assertEqual(0);
193      done()
194    });
195
196    /**
197     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_SET_FLAGS_0100
198     * @tc.name       : testMuslSpawnPosixSpawnAttrSetFlags001
199     * @tc.desc       : test posixSpawnAttrSetFlags
200     * @tc.size       : MediumTest
201     * @tc.type       : Function
202     * @tc.level      : Level 0
203     */
204    it('testMuslSpawnPosixSpawnAttrSetFlags001', 0, async (done: Function) => {
205      expect(spawn.posixSpawnAttrSetFlags()).assertEqual(0);
206      done()
207    });
208
209    /**
210     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_GET_SCHED_PARAM_0100
211     * @tc.name       : testMuslSpawnPosixSpawnAttrGetSchedParam001
212     * @tc.desc       : test posixSpawnAttrGetSchedParam
213     * @tc.size       : MediumTest
214     * @tc.type       : Function
215     * @tc.level      : Level 0
216     */
217    it('testMuslSpawnPosixSpawnAttrGetSchedParam001', 0, async (done: Function) => {
218      expect(spawn.posixSpawnAttrGetSchedParam()).assertEqual(0);
219      done()
220    });
221
222    /**
223     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_GET_GROUP_0100
224     * @tc.name       : testMuslSpawnPosixSpawnAttrGetGroup001
225     * @tc.desc       : test posixSpawnAttrGetpGroup
226     * @tc.size       : MediumTest
227     * @tc.type       : Function
228     * @tc.level      : Level 0
229     */
230    it('testMuslSpawnPosixSpawnAttrGetGroup001', 0, async (done: Function) => {
231      expect(spawn.posixSpawnAttrGetpGroup()).assertEqual(0);
232      done()
233    });
234
235    /**
236     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_SET_SIG_DEFAULT_0100
237     * @tc.name       : testMuslSpawnPosixSpawnAttrSetSigDefault001
238     * @tc.desc       : test posixSpawnAttrSetSigDefault
239     * @tc.size       : MediumTest
240     * @tc.type       : Function
241     * @tc.level      : Level 0
242     */
243    it('testMuslSpawnPosixSpawnAttrSetSigDefault001', 0, async (done: Function) => {
244      expect(spawn.posixSpawnAttrSetSigDefault()).assertEqual(0);
245      done()
246    });
247
248    /**
249     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_SET_SIG_MASK_0100
250     * @tc.name       : testMuslSpawnPosixSpawnAttrSetSigMask001
251     * @tc.desc       : test posixSpawnAttrSetSigMask
252     * @tc.size       : MediumTest
253     * @tc.type       : Function
254     * @tc.level      : Level 0
255     */
256    it('testMuslSpawnPosixSpawnAttrSetSigMask001', 0, async (done: Function) => {
257      expect(spawn.posixSpawnAttrSetSigMask()).assertEqual(0);
258      done()
259    });
260
261    /**
262     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_SET_SCHED_POLICY_0100
263     * @tc.name       : testMuslSpawnPosixSpawnAttrSetSchedPolicy001
264     * @tc.desc       : test posixSpawnAttrSetSchedPolicy
265     * @tc.size       : MediumTest
266     * @tc.type       : Function
267     * @tc.level      : Level 0
268     */
269    it('testMuslSpawnPosixSpawnAttrSetSchedPolicy001', 0, async (done: Function) => {
270      expect(spawn.posixSpawnAttrSetSchedPolicy()).assertEqual(0);
271      done()
272    });
273
274    /**
275     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_SET_SCHED_PARAM_0100
276     * @tc.name       : testMuslSpawnPosixSpawnAttrSetSchedParam001
277     * @tc.desc       : test posixSpawnAttrSetSchedParam
278     * @tc.size       : MediumTest
279     * @tc.type       : Function
280     * @tc.level      : Level 0
281     */
282    it('testMuslSpawnPosixSpawnAttrSetSchedParam001', 0, async (done: Function) => {
283      expect(spawn.posixSpawnAttrSetSchedParam()).assertEqual(0);
284      done()
285    });
286
287    /**
288     * @tc.number     : SUB_THIRDPARTY_MUSL_SPAWN_POSIX_SPAWN_ATTR_SET_PGROUP_0100
289     * @tc.name       : testMuslSpawnPosixSpawnAttrSetPGroup001
290     * @tc.desc       : test posixSpawnAttrSetPGroup
291     * @tc.size       : MediumTest
292     * @tc.type       : Function
293     * @tc.level      : Level 0
294     */
295    it('testMuslSpawnPosixSpawnAttrSetPGroup001', 0, async (done: Function) => {
296      expect(spawn.posixSpawnAttrSetPGroup()).assertEqual(0);
297      done()
298    });
299  })
300}