196279301Sopenharmony_ci/*
296279301Sopenharmony_ci * Copyright (c) 2021-2022 Huawei Device Co., Ltd.
396279301Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
496279301Sopenharmony_ci * you may not use this file except in compliance with the License.
596279301Sopenharmony_ci * You may obtain a copy of the License at
696279301Sopenharmony_ci *
796279301Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
896279301Sopenharmony_ci *
996279301Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1096279301Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1196279301Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1296279301Sopenharmony_ci * See the License for the specific language governing permissions and
1396279301Sopenharmony_ci * limitations under the License.
1496279301Sopenharmony_ci */
1596279301Sopenharmony_ci
1696279301Sopenharmony_ciimport reminderAgent from '@ohos.reminderAgentManager';
1796279301Sopenharmony_ci
1896279301Sopenharmony_ci
1996279301Sopenharmony_ciimport {describe, beforeAll, beforeEach, afterEach, afterAll, it, expect} from 'deccjsunit/index'
2096279301Sopenharmony_ci
2196279301Sopenharmony_cidescribe("ReminderHelperTest", function () {
2296279301Sopenharmony_ci    beforeAll(function() {
2396279301Sopenharmony_ci
2496279301Sopenharmony_ci        /*
2596279301Sopenharmony_ci         * @tc.setup: setup invoked before all testcases
2696279301Sopenharmony_ci         */
2796279301Sopenharmony_ci        console.info('beforeAll caled')
2896279301Sopenharmony_ci    })
2996279301Sopenharmony_ci
3096279301Sopenharmony_ci    afterAll(function() {
3196279301Sopenharmony_ci
3296279301Sopenharmony_ci        /*
3396279301Sopenharmony_ci         * @tc.teardown: teardown invoked after all testcases
3496279301Sopenharmony_ci         */
3596279301Sopenharmony_ci        console.info('afterAll caled')
3696279301Sopenharmony_ci    })
3796279301Sopenharmony_ci
3896279301Sopenharmony_ci    beforeEach(function() {
3996279301Sopenharmony_ci
4096279301Sopenharmony_ci        /*
4196279301Sopenharmony_ci         * @tc.setup: setup invoked before each testcases
4296279301Sopenharmony_ci         */
4396279301Sopenharmony_ci        console.info('beforeEach caled')
4496279301Sopenharmony_ci    })
4596279301Sopenharmony_ci
4696279301Sopenharmony_ci    afterEach(function() {
4796279301Sopenharmony_ci
4896279301Sopenharmony_ci        /*
4996279301Sopenharmony_ci         * @tc.teardown: teardown invoked after each testcases
5096279301Sopenharmony_ci         */
5196279301Sopenharmony_ci        console.info('afterEach caled')
5296279301Sopenharmony_ci        reminderAgent.cancelAllReminders();
5396279301Sopenharmony_ci    })
5496279301Sopenharmony_ci
5596279301Sopenharmony_ci    /*
5696279301Sopenharmony_ci     * @tc.name: testReminderHelper001
5796279301Sopenharmony_ci     * @tc.desc: test spent time by publishReminder with timer (callback)
5896279301Sopenharmony_ci     * @tc.type: FUNC
5996279301Sopenharmony_ci     * @tc.require:
6096279301Sopenharmony_ci     */
6196279301Sopenharmony_ci    it("testReminderHelper001", 0, async function (done) {
6296279301Sopenharmony_ci        let timer = {
6396279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
6496279301Sopenharmony_ci            triggerTimeInSeconds: 3
6596279301Sopenharmony_ci        }
6696279301Sopenharmony_ci        function reminderCallback(err, reminderId){
6796279301Sopenharmony_ci            let end = getTime();
6896279301Sopenharmony_ci            let times = end - begin;
6996279301Sopenharmony_ci            if (times < 500) {
7096279301Sopenharmony_ci                expect(true).assertTrue();
7196279301Sopenharmony_ci            } else {
7296279301Sopenharmony_ci                expect(false).assertTrue();
7396279301Sopenharmony_ci            }
7496279301Sopenharmony_ci            setTimeout(() => {
7596279301Sopenharmony_ci                done();
7696279301Sopenharmony_ci            }, 500);
7796279301Sopenharmony_ci        }
7896279301Sopenharmony_ci        function getTime(){
7996279301Sopenharmony_ci            var time = new Date();
8096279301Sopenharmony_ci            var Milliseconds = time.getTime();
8196279301Sopenharmony_ci            return Milliseconds;
8296279301Sopenharmony_ci        }
8396279301Sopenharmony_ci        let begin = getTime();
8496279301Sopenharmony_ci        try {
8596279301Sopenharmony_ci            reminderAgent.publishReminder(timer, reminderCallback)
8696279301Sopenharmony_ci        } catch (e) {
8796279301Sopenharmony_ci            expect(false).assertTrue();
8896279301Sopenharmony_ci        };
8996279301Sopenharmony_ci    })
9096279301Sopenharmony_ci
9196279301Sopenharmony_ci    /*
9296279301Sopenharmony_ci    * @tc.name: testReminderHelper002
9396279301Sopenharmony_ci    * @tc.desc: test spent time by publishReminder with timer (promise)
9496279301Sopenharmony_ci    * @tc.type: FUNC
9596279301Sopenharmony_ci    * @tc.require:
9696279301Sopenharmony_ci    */
9796279301Sopenharmony_ci    it("testReminderHelper002", 0, async function (done) {
9896279301Sopenharmony_ci        let timer = {
9996279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
10096279301Sopenharmony_ci            triggerTimeInSeconds: 3
10196279301Sopenharmony_ci        }
10296279301Sopenharmony_ci        function getTime(){
10396279301Sopenharmony_ci            var time = new Date();
10496279301Sopenharmony_ci            var Milliseconds = time.getTime();
10596279301Sopenharmony_ci            return Milliseconds;
10696279301Sopenharmony_ci        }
10796279301Sopenharmony_ci        let begin = getTime();
10896279301Sopenharmony_ci        try {
10996279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then((reminderId) => {
11096279301Sopenharmony_ci                let end = getTime();
11196279301Sopenharmony_ci                let times = end - begin;
11296279301Sopenharmony_ci                if (times < 50) {
11396279301Sopenharmony_ci                    expect(true).assertTrue();
11496279301Sopenharmony_ci                } else {
11596279301Sopenharmony_ci                    expect(false).assertTrue();
11696279301Sopenharmony_ci                }
11796279301Sopenharmony_ci            });
11896279301Sopenharmony_ci        } catch (e) {
11996279301Sopenharmony_ci            expect(false).assertTrue();
12096279301Sopenharmony_ci        };
12196279301Sopenharmony_ci        setTimeout(() => {
12296279301Sopenharmony_ci            done();
12396279301Sopenharmony_ci        }, 500);
12496279301Sopenharmony_ci    })
12596279301Sopenharmony_ci
12696279301Sopenharmony_ci    /*
12796279301Sopenharmony_ci     * @tc.name: testReminderHelper003
12896279301Sopenharmony_ci     * @tc.desc: test spent time by publishReminder with alarm (callback)
12996279301Sopenharmony_ci     * @tc.type: FUNC
13096279301Sopenharmony_ci     * @tc.require:
13196279301Sopenharmony_ci     */
13296279301Sopenharmony_ci    it("testReminderHelper003", 0, async function (done) {
13396279301Sopenharmony_ci        let alarm = {
13496279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
13596279301Sopenharmony_ci            hour: 21,
13696279301Sopenharmony_ci            minute: 14,
13796279301Sopenharmony_ci            title: "this is title",
13896279301Sopenharmony_ci            content: "this is content"
13996279301Sopenharmony_ci        }
14096279301Sopenharmony_ci        function reminderCallback(err, reminderId){
14196279301Sopenharmony_ci            let end = getTime();
14296279301Sopenharmony_ci            times = end - begin;
14396279301Sopenharmony_ci            if (times < 50) {
14496279301Sopenharmony_ci                expect(true).assertTrue();
14596279301Sopenharmony_ci            } else {
14696279301Sopenharmony_ci                expect(false).assertTrue();
14796279301Sopenharmony_ci            }
14896279301Sopenharmony_ci            setTimeout(() => {
14996279301Sopenharmony_ci                done();
15096279301Sopenharmony_ci            }, 500);
15196279301Sopenharmony_ci        }
15296279301Sopenharmony_ci        function getTime(){
15396279301Sopenharmony_ci            var time = new Date();
15496279301Sopenharmony_ci            var Milliseconds = time.getTime();
15596279301Sopenharmony_ci            return Milliseconds;
15696279301Sopenharmony_ci        }
15796279301Sopenharmony_ci        let times = 0;
15896279301Sopenharmony_ci        let begin = getTime();
15996279301Sopenharmony_ci        try {
16096279301Sopenharmony_ci            reminderAgent.publishReminder(alarm, reminderCallback)
16196279301Sopenharmony_ci        } catch (e) {
16296279301Sopenharmony_ci            expect(false).assertTrue();
16396279301Sopenharmony_ci        };
16496279301Sopenharmony_ci    })
16596279301Sopenharmony_ci
16696279301Sopenharmony_ci    /*
16796279301Sopenharmony_ci    * @tc.name: testReminderHelper004
16896279301Sopenharmony_ci    * @tc.desc: test spent time by publishReminder with alarm (promise)
16996279301Sopenharmony_ci    * @tc.type: FUNC
17096279301Sopenharmony_ci    * @tc.require:
17196279301Sopenharmony_ci    */
17296279301Sopenharmony_ci
17396279301Sopenharmony_ci    it("testReminderHelper004", 0, async function (done) {
17496279301Sopenharmony_ci        let alarm = {
17596279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
17696279301Sopenharmony_ci            hour: 21,
17796279301Sopenharmony_ci            minute: 14,
17896279301Sopenharmony_ci            title: "this is title",
17996279301Sopenharmony_ci            content: "this is content"
18096279301Sopenharmony_ci        }
18196279301Sopenharmony_ci        function getTime(){
18296279301Sopenharmony_ci            var time = new Date();
18396279301Sopenharmony_ci            var Milliseconds = time.getTime();
18496279301Sopenharmony_ci            return Milliseconds;
18596279301Sopenharmony_ci        }
18696279301Sopenharmony_ci        let begin = getTime();
18796279301Sopenharmony_ci        try {
18896279301Sopenharmony_ci            reminderAgent.publishReminder(alarm).then((reminderId) => {
18996279301Sopenharmony_ci                let end = getTime();
19096279301Sopenharmony_ci                let times = end - begin;
19196279301Sopenharmony_ci                if (times < 50) {
19296279301Sopenharmony_ci                    expect(true).assertTrue();
19396279301Sopenharmony_ci                } else {
19496279301Sopenharmony_ci                    expect(false).assertTrue();
19596279301Sopenharmony_ci                }
19696279301Sopenharmony_ci            });
19796279301Sopenharmony_ci        } catch (e) {
19896279301Sopenharmony_ci            expect(false).assertTrue();
19996279301Sopenharmony_ci        };
20096279301Sopenharmony_ci        setTimeout(() => {
20196279301Sopenharmony_ci            done();
20296279301Sopenharmony_ci        }, 500);
20396279301Sopenharmony_ci    })
20496279301Sopenharmony_ci
20596279301Sopenharmony_ci    /*
20696279301Sopenharmony_ci     * @tc.name: testReminderHelper005
20796279301Sopenharmony_ci     * @tc.desc: test spent time by publishReminder with calendar (callback)
20896279301Sopenharmony_ci     * @tc.type: FUNC
20996279301Sopenharmony_ci     * @tc.require:
21096279301Sopenharmony_ci     */
21196279301Sopenharmony_ci    it("testReminderHelper005", 0, async function (done) {
21296279301Sopenharmony_ci        let calendar = {
21396279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
21496279301Sopenharmony_ci            dateTime : {
21596279301Sopenharmony_ci                year: 2025,
21696279301Sopenharmony_ci                month: 10,
21796279301Sopenharmony_ci                day: 10,
21896279301Sopenharmony_ci                hour: 23,
21996279301Sopenharmony_ci                minute: 30
22096279301Sopenharmony_ci            }
22196279301Sopenharmony_ci        }
22296279301Sopenharmony_ci        function reminderCallback(err, reminderId){
22396279301Sopenharmony_ci            let end = getTime();
22496279301Sopenharmony_ci            times = end - begin;
22596279301Sopenharmony_ci            if (times < 50) {
22696279301Sopenharmony_ci                expect(true).assertTrue();
22796279301Sopenharmony_ci            } else {
22896279301Sopenharmony_ci                expect(false).assertTrue();
22996279301Sopenharmony_ci            }
23096279301Sopenharmony_ci            setTimeout(() => {
23196279301Sopenharmony_ci                done();
23296279301Sopenharmony_ci            }, 500);
23396279301Sopenharmony_ci        }
23496279301Sopenharmony_ci        function getTime(){
23596279301Sopenharmony_ci            var time = new Date();
23696279301Sopenharmony_ci            var Milliseconds = time.getTime();
23796279301Sopenharmony_ci            return Milliseconds;
23896279301Sopenharmony_ci        }
23996279301Sopenharmony_ci        let begin = getTime();
24096279301Sopenharmony_ci        let times = 0;
24196279301Sopenharmony_ci        try {
24296279301Sopenharmony_ci            reminderAgent.publishReminder(calendar, reminderCallback)
24396279301Sopenharmony_ci        } catch (e) {
24496279301Sopenharmony_ci            expect(false).assertTrue();
24596279301Sopenharmony_ci        };
24696279301Sopenharmony_ci    })
24796279301Sopenharmony_ci
24896279301Sopenharmony_ci    /*
24996279301Sopenharmony_ci     * @tc.name: testReminderHelper006
25096279301Sopenharmony_ci     * @tc.desc: test spent time by publishReminder with calendar (promise)
25196279301Sopenharmony_ci     * @tc.type: FUNC
25296279301Sopenharmony_ci     * @tc.require:
25396279301Sopenharmony_ci     */
25496279301Sopenharmony_ci    it("testReminderHelper006", 0, async function (done) {
25596279301Sopenharmony_ci        let calendar = {
25696279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
25796279301Sopenharmony_ci            dateTime : {
25896279301Sopenharmony_ci                year: 2025,
25996279301Sopenharmony_ci                month: 10,
26096279301Sopenharmony_ci                day: 10,
26196279301Sopenharmony_ci                hour: 23,
26296279301Sopenharmony_ci                minute: 30
26396279301Sopenharmony_ci            }
26496279301Sopenharmony_ci        }
26596279301Sopenharmony_ci        function getTime(){
26696279301Sopenharmony_ci            var time = new Date();
26796279301Sopenharmony_ci            var Milliseconds = time.getTime();
26896279301Sopenharmony_ci            return Milliseconds;
26996279301Sopenharmony_ci        }
27096279301Sopenharmony_ci        let begin = getTime();
27196279301Sopenharmony_ci        try {
27296279301Sopenharmony_ci            reminderAgent.publishReminder(calendar).then((reminderId) => {
27396279301Sopenharmony_ci                let end = getTime();
27496279301Sopenharmony_ci                let times = end - begin;
27596279301Sopenharmony_ci                if (times < 50) {
27696279301Sopenharmony_ci                    expect(true).assertTrue();
27796279301Sopenharmony_ci                } else {
27896279301Sopenharmony_ci                    expect(false).assertTrue();
27996279301Sopenharmony_ci                }
28096279301Sopenharmony_ci            })
28196279301Sopenharmony_ci        } catch (e) {
28296279301Sopenharmony_ci            expect(false).assertTrue();
28396279301Sopenharmony_ci        };
28496279301Sopenharmony_ci        setTimeout(() => {
28596279301Sopenharmony_ci            done();
28696279301Sopenharmony_ci        }, 500);
28796279301Sopenharmony_ci    })
28896279301Sopenharmony_ci
28996279301Sopenharmony_ci    /*
29096279301Sopenharmony_ci     * @tc.name: testReminderHelper007
29196279301Sopenharmony_ci     * @tc.desc: test spent time by cancelReminder with not reminderId (callback)
29296279301Sopenharmony_ci     * @tc.type: FUNC
29396279301Sopenharmony_ci     * @tc.require:
29496279301Sopenharmony_ci     */
29596279301Sopenharmony_ci    it("testReminderHelper007", 0, async function (done) {
29696279301Sopenharmony_ci        function reminderCallback(err, data){
29796279301Sopenharmony_ci            let end = getTime();
29896279301Sopenharmony_ci            times = end - begin;
29996279301Sopenharmony_ci            if (times < 50) {
30096279301Sopenharmony_ci                expect(true).assertTrue();
30196279301Sopenharmony_ci            } else {
30296279301Sopenharmony_ci                expect(false).assertTrue();
30396279301Sopenharmony_ci            }
30496279301Sopenharmony_ci            setTimeout(() => {
30596279301Sopenharmony_ci                done();
30696279301Sopenharmony_ci            }, 500);
30796279301Sopenharmony_ci        }
30896279301Sopenharmony_ci        function getTime(){
30996279301Sopenharmony_ci            var time = new Date();
31096279301Sopenharmony_ci            var Milliseconds = time.getTime();
31196279301Sopenharmony_ci            return Milliseconds;
31296279301Sopenharmony_ci        }
31396279301Sopenharmony_ci        let begin = getTime();
31496279301Sopenharmony_ci        let times = 0;
31596279301Sopenharmony_ci        try {
31696279301Sopenharmony_ci            reminderAgent.cancelReminder(1, reminderCallback)
31796279301Sopenharmony_ci        } catch (e) {
31896279301Sopenharmony_ci            expect(false).assertTrue();
31996279301Sopenharmony_ci        };
32096279301Sopenharmony_ci    })
32196279301Sopenharmony_ci
32296279301Sopenharmony_ci    /*
32396279301Sopenharmony_ci     * @tc.name: testReminderHelper008
32496279301Sopenharmony_ci     * @tc.desc: test spent time by cancelReminder with not reminderId (promise)
32596279301Sopenharmony_ci     * @tc.type: FUNC
32696279301Sopenharmony_ci     * @tc.require:
32796279301Sopenharmony_ci     */
32896279301Sopenharmony_ci    it("testReminderHelper008", 0, async function (done) {
32996279301Sopenharmony_ci        function getTime(){
33096279301Sopenharmony_ci            var time = new Date();
33196279301Sopenharmony_ci            var Milliseconds = time.getTime();
33296279301Sopenharmony_ci            return Milliseconds;
33396279301Sopenharmony_ci        }
33496279301Sopenharmony_ci        let begin = getTime();
33596279301Sopenharmony_ci        try {
33696279301Sopenharmony_ci            reminderAgent.cancelReminder(1).then(() => {
33796279301Sopenharmony_ci                let end = getTime();
33896279301Sopenharmony_ci                let times = end - begin;
33996279301Sopenharmony_ci                if (times < 50) {
34096279301Sopenharmony_ci                    expect(true).assertTrue();
34196279301Sopenharmony_ci                } else {
34296279301Sopenharmony_ci                    expect(false).assertTrue();
34396279301Sopenharmony_ci                }
34496279301Sopenharmony_ci            })
34596279301Sopenharmony_ci        } catch (e) {
34696279301Sopenharmony_ci            expect(false).assertTrue();
34796279301Sopenharmony_ci        };
34896279301Sopenharmony_ci        setTimeout(() => {
34996279301Sopenharmony_ci            done();
35096279301Sopenharmony_ci        }, 500);
35196279301Sopenharmony_ci    })
35296279301Sopenharmony_ci
35396279301Sopenharmony_ci    /*
35496279301Sopenharmony_ci     * @tc.name: testReminderHelper009
35596279301Sopenharmony_ci     * @tc.desc: test spent time by cancelReminder with timer (callback)
35696279301Sopenharmony_ci     * @tc.type: FUNC
35796279301Sopenharmony_ci     * @tc.require:
35896279301Sopenharmony_ci     */
35996279301Sopenharmony_ci    it("testReminderHelper009", 0, async function (done) {
36096279301Sopenharmony_ci        let timer = {
36196279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
36296279301Sopenharmony_ci            triggerTimeInSeconds: 3
36396279301Sopenharmony_ci        }
36496279301Sopenharmony_ci        function reminderCallback(err, data){
36596279301Sopenharmony_ci            let end = getTime();
36696279301Sopenharmony_ci            times = end - begin;
36796279301Sopenharmony_ci            if (times < 50) {
36896279301Sopenharmony_ci                expect(true).assertTrue();
36996279301Sopenharmony_ci            } else {
37096279301Sopenharmony_ci                expect(false).assertTrue();
37196279301Sopenharmony_ci            }
37296279301Sopenharmony_ci            setTimeout(() => {
37396279301Sopenharmony_ci                done();
37496279301Sopenharmony_ci            }, 500);
37596279301Sopenharmony_ci        }
37696279301Sopenharmony_ci        function getTime(){
37796279301Sopenharmony_ci            var time = new Date();
37896279301Sopenharmony_ci            var Milliseconds = time.getTime();
37996279301Sopenharmony_ci            return Milliseconds;
38096279301Sopenharmony_ci        }
38196279301Sopenharmony_ci        let begin = 0;
38296279301Sopenharmony_ci        let times = 0;
38396279301Sopenharmony_ci        try {
38496279301Sopenharmony_ci            reminderAgent.publishReminder(timer, (err, reminderId) => {
38596279301Sopenharmony_ci                begin = getTime();
38696279301Sopenharmony_ci                try {
38796279301Sopenharmony_ci                    reminderAgent.cancelReminder(reminderId, reminderCallback);
38896279301Sopenharmony_ci                } catch (e) {
38996279301Sopenharmony_ci                    expect(false).assertTrue();
39096279301Sopenharmony_ci                };
39196279301Sopenharmony_ci            })
39296279301Sopenharmony_ci        } catch (e) {
39396279301Sopenharmony_ci            expect(false).assertTrue();
39496279301Sopenharmony_ci        };
39596279301Sopenharmony_ci    })
39696279301Sopenharmony_ci
39796279301Sopenharmony_ci    /*
39896279301Sopenharmony_ci     * @tc.name: testReminderHelper010
39996279301Sopenharmony_ci     * @tc.desc: test spent time by cancelReminder with calendar (promise)
40096279301Sopenharmony_ci     * @tc.type: FUNC
40196279301Sopenharmony_ci     * @tc.require:
40296279301Sopenharmony_ci     */
40396279301Sopenharmony_ci    it("testReminderHelper010", 0, async function (done) {
40496279301Sopenharmony_ci        let calendar = {
40596279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
40696279301Sopenharmony_ci            dateTime : {
40796279301Sopenharmony_ci                year: 2025,
40896279301Sopenharmony_ci                month: 10,
40996279301Sopenharmony_ci                day: 10,
41096279301Sopenharmony_ci                hour: 23,
41196279301Sopenharmony_ci                minute: 30
41296279301Sopenharmony_ci            }
41396279301Sopenharmony_ci        }
41496279301Sopenharmony_ci        function getTime(){
41596279301Sopenharmony_ci            var time = new Date();
41696279301Sopenharmony_ci            var Milliseconds = time.getTime();
41796279301Sopenharmony_ci            return Milliseconds;
41896279301Sopenharmony_ci        }
41996279301Sopenharmony_ci        let begin = 0;
42096279301Sopenharmony_ci        let times = 0;
42196279301Sopenharmony_ci        try {
42296279301Sopenharmony_ci            reminderAgent.publishReminder(calendar, (err, reminderId) => {
42396279301Sopenharmony_ci                begin = getTime();
42496279301Sopenharmony_ci                try {
42596279301Sopenharmony_ci                    reminderAgent.cancelReminder(reminderId).then(() => {
42696279301Sopenharmony_ci                        let end = getTime();
42796279301Sopenharmony_ci                        times = end - begin;
42896279301Sopenharmony_ci                        if (times < 50) {
42996279301Sopenharmony_ci                            expect(true).assertTrue();
43096279301Sopenharmony_ci                        } else {
43196279301Sopenharmony_ci                            expect(false).assertTrue();
43296279301Sopenharmony_ci                        }
43396279301Sopenharmony_ci                    })
43496279301Sopenharmony_ci                } catch (e) {
43596279301Sopenharmony_ci                    expect(false).assertTrue();
43696279301Sopenharmony_ci                };
43796279301Sopenharmony_ci
43896279301Sopenharmony_ci            })
43996279301Sopenharmony_ci        } catch (e) {
44096279301Sopenharmony_ci            expect(false).assertTrue();
44196279301Sopenharmony_ci        };
44296279301Sopenharmony_ci        setTimeout(() => {
44396279301Sopenharmony_ci            done();
44496279301Sopenharmony_ci        }, 500);
44596279301Sopenharmony_ci    })
44696279301Sopenharmony_ci
44796279301Sopenharmony_ci    /*
44896279301Sopenharmony_ci     * @tc.name: testReminderHelper011
44996279301Sopenharmony_ci     * @tc.desc: test spent time by getValidReminders with not (callback)
45096279301Sopenharmony_ci     * @tc.type: FUNC
45196279301Sopenharmony_ci     * @tc.require:
45296279301Sopenharmony_ci     */
45396279301Sopenharmony_ci    it("testReminderHelper011", 0, async function (done) {
45496279301Sopenharmony_ci        function reminderCallback(err, reminders){
45596279301Sopenharmony_ci            let end = getTime();
45696279301Sopenharmony_ci            times = end - begin;
45796279301Sopenharmony_ci            if (times < 50) {
45896279301Sopenharmony_ci                expect(true).assertTrue();
45996279301Sopenharmony_ci            } else {
46096279301Sopenharmony_ci                expect(false).assertTrue();
46196279301Sopenharmony_ci            }
46296279301Sopenharmony_ci            setTimeout(() => {
46396279301Sopenharmony_ci                done();
46496279301Sopenharmony_ci            }, 500);
46596279301Sopenharmony_ci        }
46696279301Sopenharmony_ci        function getTime(){
46796279301Sopenharmony_ci            var time = new Date();
46896279301Sopenharmony_ci            var Milliseconds = time.getTime();
46996279301Sopenharmony_ci            return Milliseconds;
47096279301Sopenharmony_ci        }
47196279301Sopenharmony_ci        let begin = getTime();
47296279301Sopenharmony_ci        let times = 0;
47396279301Sopenharmony_ci        try {
47496279301Sopenharmony_ci            reminderAgent.getValidReminders(reminderCallback)
47596279301Sopenharmony_ci        } catch (e) {
47696279301Sopenharmony_ci            expect(false).assertTrue();
47796279301Sopenharmony_ci        };
47896279301Sopenharmony_ci    })
47996279301Sopenharmony_ci
48096279301Sopenharmony_ci    /*
48196279301Sopenharmony_ci     * @tc.name: testReminderHelper012
48296279301Sopenharmony_ci     * @tc.desc: test spent time by getValidReminders with not (promise)
48396279301Sopenharmony_ci     * @tc.type: FUNC
48496279301Sopenharmony_ci     * @tc.require:
48596279301Sopenharmony_ci     */
48696279301Sopenharmony_ci    it("testReminderHelper012", 0, async function (done) {
48796279301Sopenharmony_ci        function getTime(){
48896279301Sopenharmony_ci            var time = new Date();
48996279301Sopenharmony_ci            var Milliseconds = time.getTime();
49096279301Sopenharmony_ci            return Milliseconds;
49196279301Sopenharmony_ci        }
49296279301Sopenharmony_ci        let begin = getTime();
49396279301Sopenharmony_ci        try {
49496279301Sopenharmony_ci            reminderAgent.getValidReminders().then((reminders) => {
49596279301Sopenharmony_ci                let end = getTime();
49696279301Sopenharmony_ci                let times = end - begin;
49796279301Sopenharmony_ci                if (times < 50) {
49896279301Sopenharmony_ci                    expect(true).assertTrue();
49996279301Sopenharmony_ci                } else {
50096279301Sopenharmony_ci                    expect(false).assertTrue();
50196279301Sopenharmony_ci                }
50296279301Sopenharmony_ci            })
50396279301Sopenharmony_ci        } catch (e) {
50496279301Sopenharmony_ci            expect(false).assertTrue();
50596279301Sopenharmony_ci        };
50696279301Sopenharmony_ci        setTimeout(() => {
50796279301Sopenharmony_ci            done();
50896279301Sopenharmony_ci        }, 500);
50996279301Sopenharmony_ci    })
51096279301Sopenharmony_ci
51196279301Sopenharmony_ci
51296279301Sopenharmony_ci    /*
51396279301Sopenharmony_ci     * @tc.name: testReminderHelper013
51496279301Sopenharmony_ci     * @tc.desc: test spent time by cancelAllReminders (callback)
51596279301Sopenharmony_ci     * @tc.type: FUNC
51696279301Sopenharmony_ci     * @tc.require:
51796279301Sopenharmony_ci     */
51896279301Sopenharmony_ci    it("testReminderHelper013", 0, async function (done) {
51996279301Sopenharmony_ci        function reminderCallback(err, data){
52096279301Sopenharmony_ci            let end = getTime();
52196279301Sopenharmony_ci            times = end - begin;
52296279301Sopenharmony_ci            if (times < 50) {
52396279301Sopenharmony_ci                expect(true).assertTrue();
52496279301Sopenharmony_ci            } else {
52596279301Sopenharmony_ci                expect(false).assertTrue();
52696279301Sopenharmony_ci            }
52796279301Sopenharmony_ci            setTimeout(() => {
52896279301Sopenharmony_ci                done();
52996279301Sopenharmony_ci            }, 500);
53096279301Sopenharmony_ci        }
53196279301Sopenharmony_ci        function getTime(){
53296279301Sopenharmony_ci            var time = new Date();
53396279301Sopenharmony_ci            var Milliseconds = time.getTime();
53496279301Sopenharmony_ci            return Milliseconds;
53596279301Sopenharmony_ci        }
53696279301Sopenharmony_ci        let begin = getTime();
53796279301Sopenharmony_ci        let times = 0;
53896279301Sopenharmony_ci        try {
53996279301Sopenharmony_ci            reminderAgent.cancelAllReminders(reminderCallback)
54096279301Sopenharmony_ci        } catch (e) {
54196279301Sopenharmony_ci            expect(false).assertTrue();
54296279301Sopenharmony_ci        };
54396279301Sopenharmony_ci    })
54496279301Sopenharmony_ci
54596279301Sopenharmony_ci    /*
54696279301Sopenharmony_ci     * @tc.name: testReminderHelper014
54796279301Sopenharmony_ci     * @tc.desc: test spent time by cancelAllReminders (promise)
54896279301Sopenharmony_ci     * @tc.type: FUNC
54996279301Sopenharmony_ci     * @tc.require:
55096279301Sopenharmony_ci     */
55196279301Sopenharmony_ci    it("testReminderHelper014", 0, async function (done) {
55296279301Sopenharmony_ci        function getTime(){
55396279301Sopenharmony_ci            var time = new Date();
55496279301Sopenharmony_ci            var Milliseconds = time.getTime();
55596279301Sopenharmony_ci            return Milliseconds;
55696279301Sopenharmony_ci        }
55796279301Sopenharmony_ci        let begin = getTime();
55896279301Sopenharmony_ci        try {
55996279301Sopenharmony_ci            reminderAgent.cancelAllReminders().then(() => {
56096279301Sopenharmony_ci                let end = getTime();
56196279301Sopenharmony_ci                let times = end - begin;
56296279301Sopenharmony_ci                if (times < 50) {
56396279301Sopenharmony_ci                    expect(true).assertTrue();
56496279301Sopenharmony_ci                } else {
56596279301Sopenharmony_ci                    expect(false).assertTrue();
56696279301Sopenharmony_ci                }
56796279301Sopenharmony_ci            })
56896279301Sopenharmony_ci        } catch (e) {
56996279301Sopenharmony_ci            expect(false).assertTrue();
57096279301Sopenharmony_ci        };
57196279301Sopenharmony_ci        setTimeout(() => {
57296279301Sopenharmony_ci            done();
57396279301Sopenharmony_ci        }, 500);
57496279301Sopenharmony_ci    })
57596279301Sopenharmony_ci
57696279301Sopenharmony_ci    /*
57796279301Sopenharmony_ci     * @tc.name: testReminderHelper015
57896279301Sopenharmony_ci     * @tc.desc: test spent time by addNotificationSlot (callback)
57996279301Sopenharmony_ci     * @tc.type: FUNC
58096279301Sopenharmony_ci     * @tc.require:
58196279301Sopenharmony_ci     */
58296279301Sopenharmony_ci    it("testReminderHelper015", 0, async function (done) {
58396279301Sopenharmony_ci        function reminderCallback(err, data){
58496279301Sopenharmony_ci            let end = getTime();
58596279301Sopenharmony_ci            times = end - begin;
58696279301Sopenharmony_ci            if (times < 50) {
58796279301Sopenharmony_ci                expect(true).assertTrue();
58896279301Sopenharmony_ci            } else {
58996279301Sopenharmony_ci                expect(false).assertTrue();
59096279301Sopenharmony_ci            }
59196279301Sopenharmony_ci            setTimeout(() => {
59296279301Sopenharmony_ci                done();
59396279301Sopenharmony_ci            }, 500);
59496279301Sopenharmony_ci        }
59596279301Sopenharmony_ci        function getTime(){
59696279301Sopenharmony_ci            var time = new Date();
59796279301Sopenharmony_ci            var Milliseconds = time.getTime();
59896279301Sopenharmony_ci            return Milliseconds;
59996279301Sopenharmony_ci        }
60096279301Sopenharmony_ci        let begin = getTime();
60196279301Sopenharmony_ci        let times = 0;
60296279301Sopenharmony_ci        try {
60396279301Sopenharmony_ci            reminderAgent.addNotificationSlot(1, reminderCallback)
60496279301Sopenharmony_ci        } catch (e) {
60596279301Sopenharmony_ci            expect(true).assertTrue();
60696279301Sopenharmony_ci        };
60796279301Sopenharmony_ci        done();
60896279301Sopenharmony_ci    })
60996279301Sopenharmony_ci
61096279301Sopenharmony_ci    /*
61196279301Sopenharmony_ci     * @tc.name: testReminderHelper016
61296279301Sopenharmony_ci     * @tc.desc: test spent time by addNotificationSlot (promise)
61396279301Sopenharmony_ci     * @tc.type: FUNC
61496279301Sopenharmony_ci     * @tc.require:
61596279301Sopenharmony_ci     */
61696279301Sopenharmony_ci    it("testReminderHelper016", 0, async function (done) {
61796279301Sopenharmony_ci        function getTime(){
61896279301Sopenharmony_ci            var time = new Date();
61996279301Sopenharmony_ci            var Milliseconds = time.getTime();
62096279301Sopenharmony_ci            return Milliseconds;
62196279301Sopenharmony_ci        }
62296279301Sopenharmony_ci        let begin = getTime();
62396279301Sopenharmony_ci        try {
62496279301Sopenharmony_ci            reminderAgent.addNotificationSlot(1).then(() => {
62596279301Sopenharmony_ci                let end = getTime();
62696279301Sopenharmony_ci                let times = end - begin;
62796279301Sopenharmony_ci                if (times < 50) {
62896279301Sopenharmony_ci                    expect(true).assertTrue();
62996279301Sopenharmony_ci                } else {
63096279301Sopenharmony_ci                    expect(false).assertTrue();
63196279301Sopenharmony_ci                }
63296279301Sopenharmony_ci            })
63396279301Sopenharmony_ci        } catch (e) {
63496279301Sopenharmony_ci            expect(true).assertTrue();
63596279301Sopenharmony_ci        };
63696279301Sopenharmony_ci
63796279301Sopenharmony_ci        setTimeout(() => {
63896279301Sopenharmony_ci            done();
63996279301Sopenharmony_ci        }, 500);
64096279301Sopenharmony_ci    })
64196279301Sopenharmony_ci
64296279301Sopenharmony_ci    /*
64396279301Sopenharmony_ci     * @tc.name: testReminderHelper017
64496279301Sopenharmony_ci     * @tc.desc: test spent time by removeNotificationSlot (callback)
64596279301Sopenharmony_ci     * @tc.type: FUNC
64696279301Sopenharmony_ci     * @tc.require:
64796279301Sopenharmony_ci     */
64896279301Sopenharmony_ci    it("testReminderHelper017", 0, async function (done) {
64996279301Sopenharmony_ci        var tarRemoveSlot = {
65096279301Sopenharmony_ci            type: 1
65196279301Sopenharmony_ci        }
65296279301Sopenharmony_ci        function reminderCallback(err, data){
65396279301Sopenharmony_ci            let end = getTime();
65496279301Sopenharmony_ci            times = end - begin;
65596279301Sopenharmony_ci            if (times < 50) {
65696279301Sopenharmony_ci                expect(true).assertTrue();
65796279301Sopenharmony_ci            } else {
65896279301Sopenharmony_ci                expect(false).assertTrue();
65996279301Sopenharmony_ci            }
66096279301Sopenharmony_ci            setTimeout(() => {
66196279301Sopenharmony_ci                done();
66296279301Sopenharmony_ci            }, 500);
66396279301Sopenharmony_ci        }
66496279301Sopenharmony_ci        function getTime(){
66596279301Sopenharmony_ci            var time = new Date();
66696279301Sopenharmony_ci            var Milliseconds = time.getTime();
66796279301Sopenharmony_ci            return Milliseconds;
66896279301Sopenharmony_ci        }
66996279301Sopenharmony_ci        let begin = getTime();
67096279301Sopenharmony_ci        let times = 0;
67196279301Sopenharmony_ci        try {
67296279301Sopenharmony_ci            reminderAgent.addNotificationSlot(tarRemoveSlot.type, (err, data) => {
67396279301Sopenharmony_ci                begin = getTime();
67496279301Sopenharmony_ci                reminderAgent.removeNotificationSlot(1, reminderCallback)
67596279301Sopenharmony_ci            });
67696279301Sopenharmony_ci        } catch (e) {
67796279301Sopenharmony_ci            expect(true).assertTrue();
67896279301Sopenharmony_ci        };
67996279301Sopenharmony_ci        done();
68096279301Sopenharmony_ci    })
68196279301Sopenharmony_ci
68296279301Sopenharmony_ci    /*
68396279301Sopenharmony_ci     * @tc.name: testReminderHelper018
68496279301Sopenharmony_ci     * @tc.desc: test spent time by cancelAllReminders (promise)
68596279301Sopenharmony_ci     * @tc.type: FUNC
68696279301Sopenharmony_ci     * @tc.require:
68796279301Sopenharmony_ci     */
68896279301Sopenharmony_ci    it("testReminderHelper018", 0, async function (done) {
68996279301Sopenharmony_ci        var tarRemoveSlot = {
69096279301Sopenharmony_ci            type: 1
69196279301Sopenharmony_ci        }
69296279301Sopenharmony_ci        function getTime(){
69396279301Sopenharmony_ci            var time = new Date();
69496279301Sopenharmony_ci            var Milliseconds = time.getTime();
69596279301Sopenharmony_ci            return Milliseconds;
69696279301Sopenharmony_ci        }
69796279301Sopenharmony_ci        try {
69896279301Sopenharmony_ci            reminderAgent.addNotificationSlot(tarRemoveSlot.type, (err, data) => {
69996279301Sopenharmony_ci                let begin = getTime();
70096279301Sopenharmony_ci                reminderAgent.removeNotificationSlot(tarRemoveSlot.type).then(() => {
70196279301Sopenharmony_ci                    let end = getTime();
70296279301Sopenharmony_ci                    let times = end - begin;
70396279301Sopenharmony_ci                    if (times < 50) {
70496279301Sopenharmony_ci                        expect(true).assertTrue();
70596279301Sopenharmony_ci                    } else {
70696279301Sopenharmony_ci                        expect(false).assertTrue();
70796279301Sopenharmony_ci                    }
70896279301Sopenharmony_ci                })
70996279301Sopenharmony_ci            });
71096279301Sopenharmony_ci        } catch (e) {
71196279301Sopenharmony_ci            expect(true).assertTrue();
71296279301Sopenharmony_ci        };
71396279301Sopenharmony_ci
71496279301Sopenharmony_ci        setTimeout(() => {
71596279301Sopenharmony_ci            done();
71696279301Sopenharmony_ci        }, 500);
71796279301Sopenharmony_ci    })
71896279301Sopenharmony_ci
71996279301Sopenharmony_ci    /*
72096279301Sopenharmony_ci     * @tc.name: testReminderHelper019
72196279301Sopenharmony_ci     * @tc.desc: test publishReminder can return correct reminder id.
72296279301Sopenharmony_ci     * @tc.type: FUNC
72396279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EH AR000GH8E9 AR00GH8EH
72496279301Sopenharmony_ci     */
72596279301Sopenharmony_ci    it("testReminderHelper019", 0, async function (done) {
72696279301Sopenharmony_ci        let timer = {
72796279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
72896279301Sopenharmony_ci            triggerTimeInSeconds: 100
72996279301Sopenharmony_ci        }
73096279301Sopenharmony_ci        let expectId = -1;
73196279301Sopenharmony_ci        try {
73296279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then((reminderId) => {
73396279301Sopenharmony_ci                expectId = reminderId + 1;
73496279301Sopenharmony_ci                try {
73596279301Sopenharmony_ci                    reminderAgent.publishReminder(timer).then((reminderId) => {
73696279301Sopenharmony_ci                        if (reminderId === expectId){
73796279301Sopenharmony_ci                            expect(true).assertTrue();
73896279301Sopenharmony_ci                            setTimeout(() => {
73996279301Sopenharmony_ci                                done();
74096279301Sopenharmony_ci                            }, 500);
74196279301Sopenharmony_ci                        }
74296279301Sopenharmony_ci                    }, (error) => {
74396279301Sopenharmony_ci                        expect(false).assertTrue();
74496279301Sopenharmony_ci                        setTimeout(() => {
74596279301Sopenharmony_ci                            done();
74696279301Sopenharmony_ci                        }, 500);
74796279301Sopenharmony_ci                    });
74896279301Sopenharmony_ci                } catch (e) {
74996279301Sopenharmony_ci                    expect(false).assertTrue();
75096279301Sopenharmony_ci                };
75196279301Sopenharmony_ci
75296279301Sopenharmony_ci            });
75396279301Sopenharmony_ci        } catch (e) {
75496279301Sopenharmony_ci            expect(false).assertTrue();
75596279301Sopenharmony_ci        };
75696279301Sopenharmony_ci    })
75796279301Sopenharmony_ci
75896279301Sopenharmony_ci    /*
75996279301Sopenharmony_ci     * @tc.name: testReminderHelper020
76096279301Sopenharmony_ci     * @tc.desc: test publishReminder can return correct reminder id.
76196279301Sopenharmony_ci     * @tc.type: FUNC
76296279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EH AR000GH8E9 AR00GH8EH
76396279301Sopenharmony_ci     */
76496279301Sopenharmony_ci    it("testReminderHelper020", 0, async function (done) {
76596279301Sopenharmony_ci        let timer = {
76696279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
76796279301Sopenharmony_ci            triggerTimeInSeconds: 100
76896279301Sopenharmony_ci        }
76996279301Sopenharmony_ci        let expectId = -1;
77096279301Sopenharmony_ci        function reminderCallback(err, reminderId) {
77196279301Sopenharmony_ci            expect(reminderId).assertEqual(expectId);
77296279301Sopenharmony_ci        }
77396279301Sopenharmony_ci        try {
77496279301Sopenharmony_ci            reminderAgent.publishReminder(timer, (err, reminderId) => {
77596279301Sopenharmony_ci                expectId = reminderId + 1;
77696279301Sopenharmony_ci                try {
77796279301Sopenharmony_ci                    reminderAgent.publishReminder(timer, reminderCallback);
77896279301Sopenharmony_ci                } catch (e) {
77996279301Sopenharmony_ci                    expect(false).assertTrue();
78096279301Sopenharmony_ci                };
78196279301Sopenharmony_ci            })
78296279301Sopenharmony_ci        } catch (e) {
78396279301Sopenharmony_ci            expect(false).assertTrue();
78496279301Sopenharmony_ci        };
78596279301Sopenharmony_ci        done();
78696279301Sopenharmony_ci    })
78796279301Sopenharmony_ci
78896279301Sopenharmony_ci    /*
78996279301Sopenharmony_ci     * @tc.name: testReminderHelper021
79096279301Sopenharmony_ci     * @tc.desc: test addNotificationSlot instance with null
79196279301Sopenharmony_ci     * @tc.type: FUNC
79296279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EC
79396279301Sopenharmony_ci     */
79496279301Sopenharmony_ci    it("testReminderHelper021", 0, async function (done) {
79596279301Sopenharmony_ci        function reminderCallback(err, data){
79696279301Sopenharmony_ci            expect(true).assertEqual(true);
79796279301Sopenharmony_ci        }
79896279301Sopenharmony_ci        try {
79996279301Sopenharmony_ci            reminderAgent.addNotificationSlot(0, reminderCallback);
80096279301Sopenharmony_ci        } catch (e) {
80196279301Sopenharmony_ci            expect(true).assertTrue();
80296279301Sopenharmony_ci        };
80396279301Sopenharmony_ci        done();
80496279301Sopenharmony_ci    })
80596279301Sopenharmony_ci
80696279301Sopenharmony_ci    /*
80796279301Sopenharmony_ci     * @tc.name: testReminderHelper022
80896279301Sopenharmony_ci     * @tc.desc: test addNotificationSlot instance with null
80996279301Sopenharmony_ci     * @tc.type: FUNC
81096279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EC
81196279301Sopenharmony_ci     */
81296279301Sopenharmony_ci    it("testReminderHelper022", 0, async function (done) {
81396279301Sopenharmony_ci        let mySlot = null;
81496279301Sopenharmony_ci        let promise = new Promise((resolve, reject) => {
81596279301Sopenharmony_ci            try {
81696279301Sopenharmony_ci                reminderAgent.addNotificationSlot(mySlot).then(() => {
81796279301Sopenharmony_ci                    resolve();
81896279301Sopenharmony_ci                })
81996279301Sopenharmony_ci            } catch (e) {
82096279301Sopenharmony_ci                expect(true).assertTrue();
82196279301Sopenharmony_ci            };
82296279301Sopenharmony_ci            reject(new Error('errr occurred.'));
82396279301Sopenharmony_ci        });
82496279301Sopenharmony_ci        promise.then(() => {
82596279301Sopenharmony_ci        }, err => {
82696279301Sopenharmony_ci            let i = 0;
82796279301Sopenharmony_ci            expect(0).assertEqual(i);
82896279301Sopenharmony_ci        }).catch(res => {});
82996279301Sopenharmony_ci        done();
83096279301Sopenharmony_ci    })
83196279301Sopenharmony_ci
83296279301Sopenharmony_ci    /*
83396279301Sopenharmony_ci     * @tc.name: testReminderHelper023
83496279301Sopenharmony_ci     * @tc.desc: test addNotificationSlot with normal value
83596279301Sopenharmony_ci     * @tc.type: FUNC
83696279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EC
83796279301Sopenharmony_ci     */
83896279301Sopenharmony_ci    it("testReminderHelper023", 0, async function (done) {
83996279301Sopenharmony_ci        let mySlot = {
84096279301Sopenharmony_ci            type: 2
84196279301Sopenharmony_ci        }
84296279301Sopenharmony_ci        try {
84396279301Sopenharmony_ci            reminderAgent.addNotificationSlot(mySlot).then(() => {
84496279301Sopenharmony_ci                let i = 0;
84596279301Sopenharmony_ci                expect(i).assertEqual(0);
84696279301Sopenharmony_ci            });
84796279301Sopenharmony_ci        } catch (e) {
84896279301Sopenharmony_ci            expect(true).assertTrue();
84996279301Sopenharmony_ci        };
85096279301Sopenharmony_ci        done();
85196279301Sopenharmony_ci    })
85296279301Sopenharmony_ci
85396279301Sopenharmony_ci    /*
85496279301Sopenharmony_ci     * @tc.name: testReminderHelper024
85596279301Sopenharmony_ci     * @tc.desc: test addNotificationSlot with normal value
85696279301Sopenharmony_ci     * @tc.type: FUNC
85796279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EC
85896279301Sopenharmony_ci     */
85996279301Sopenharmony_ci    it("testReminderHelper024", 0, async function (done) {
86096279301Sopenharmony_ci        try {
86196279301Sopenharmony_ci            reminderAgent.addNotificationSlot(3, (err, data) => {
86296279301Sopenharmony_ci                let i = 0;
86396279301Sopenharmony_ci                expect(i).assertEqual(0);
86496279301Sopenharmony_ci            });
86596279301Sopenharmony_ci        } catch (e) {
86696279301Sopenharmony_ci            expect(true).assertTrue();
86796279301Sopenharmony_ci        };
86896279301Sopenharmony_ci        done();
86996279301Sopenharmony_ci    })
87096279301Sopenharmony_ci
87196279301Sopenharmony_ci    /*
87296279301Sopenharmony_ci     * @tc.name: testReminderHelper025
87396279301Sopenharmony_ci     * @tc.desc: test cancelAllReminders can cancel all exist reminders
87496279301Sopenharmony_ci     * @tc.type: FUNC
87596279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EA
87696279301Sopenharmony_ci     */
87796279301Sopenharmony_ci    it("testReminderHelper025", 0, async function (done) {
87896279301Sopenharmony_ci        let timer = {
87996279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
88096279301Sopenharmony_ci            triggerTimeInSeconds: 100
88196279301Sopenharmony_ci        }
88296279301Sopenharmony_ci        let calendar = {
88396279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
88496279301Sopenharmony_ci            dateTime : {
88596279301Sopenharmony_ci                year: 2025,
88696279301Sopenharmony_ci                month: 10,
88796279301Sopenharmony_ci                day: 10,
88896279301Sopenharmony_ci                hour: 23,
88996279301Sopenharmony_ci                minute: 30
89096279301Sopenharmony_ci            }
89196279301Sopenharmony_ci        }
89296279301Sopenharmony_ci        try {
89396279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then((reminderId) => {});
89496279301Sopenharmony_ci            reminderAgent.publishReminder(calendar).then((reminderId) => {});
89596279301Sopenharmony_ci            setTimeout(() => {
89696279301Sopenharmony_ci                reminderAgent.cancelAllReminders().then(() => {
89796279301Sopenharmony_ci                    reminderAgent.getValidReminders().then((reminders) => {
89896279301Sopenharmony_ci                        expect(reminders.length === 0).assertEqual(true);
89996279301Sopenharmony_ci                    });
90096279301Sopenharmony_ci                });
90196279301Sopenharmony_ci            }, 5000);
90296279301Sopenharmony_ci        } catch (e) {
90396279301Sopenharmony_ci            expect(false).assertTrue();
90496279301Sopenharmony_ci        };
90596279301Sopenharmony_ci        done();
90696279301Sopenharmony_ci    })
90796279301Sopenharmony_ci
90896279301Sopenharmony_ci    /*
90996279301Sopenharmony_ci     * @tc.name: testReminderHelper026
91096279301Sopenharmony_ci     * @tc.desc: test cancelAllReminders can cancel all exist reminders
91196279301Sopenharmony_ci     * @tc.type: FUNC
91296279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EA AR000GH8EF AR000GH8EI
91396279301Sopenharmony_ci     */
91496279301Sopenharmony_ci    it("testReminderHelper026", 0, async function (done) {
91596279301Sopenharmony_ci        let timer = {
91696279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
91796279301Sopenharmony_ci            triggerTimeInSeconds: 100
91896279301Sopenharmony_ci        }
91996279301Sopenharmony_ci        let calendar = {
92096279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
92196279301Sopenharmony_ci            dateTime : {
92296279301Sopenharmony_ci                year: 2025,
92396279301Sopenharmony_ci                month: 10,
92496279301Sopenharmony_ci                day: 10,
92596279301Sopenharmony_ci                hour: 23,
92696279301Sopenharmony_ci                minute: 30
92796279301Sopenharmony_ci            }
92896279301Sopenharmony_ci        }
92996279301Sopenharmony_ci        try {
93096279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then((reminderId) => {});
93196279301Sopenharmony_ci            reminderAgent.publishReminder(calendar).then((reminderId) => {});
93296279301Sopenharmony_ci            setTimeout(() => {
93396279301Sopenharmony_ci                reminderAgent.cancelAllReminders((err, data) => {
93496279301Sopenharmony_ci                    reminderAgent.getValidReminders().then((reminders) => {
93596279301Sopenharmony_ci                        expect(reminders.length === 0).assertEqual(true);
93696279301Sopenharmony_ci                    });
93796279301Sopenharmony_ci                });
93896279301Sopenharmony_ci            }, 5000);
93996279301Sopenharmony_ci        } catch (e) {
94096279301Sopenharmony_ci            expect(false).assertTrue();
94196279301Sopenharmony_ci        };
94296279301Sopenharmony_ci
94396279301Sopenharmony_ci        done();
94496279301Sopenharmony_ci    })
94596279301Sopenharmony_ci
94696279301Sopenharmony_ci    /*
94796279301Sopenharmony_ci     * @tc.name: testReminderHelper027
94896279301Sopenharmony_ci     * @tc.desc: test cancelReminder with not exit reminder.
94996279301Sopenharmony_ci     * @tc.type: FUNC
95096279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EA
95196279301Sopenharmony_ci     */
95296279301Sopenharmony_ci    it("testReminderHelper027", 0, async function (done) {
95396279301Sopenharmony_ci        let timer = {
95496279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
95596279301Sopenharmony_ci            triggerTimeInSeconds: 3
95696279301Sopenharmony_ci        }
95796279301Sopenharmony_ci        let publishlength = -1;
95896279301Sopenharmony_ci        let cancellength = -1;
95996279301Sopenharmony_ci        let firstdiff = -1;
96096279301Sopenharmony_ci        try {
96196279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then(() => {
96296279301Sopenharmony_ci                reminderAgent.getValidReminders().then((reminders) => {
96396279301Sopenharmony_ci                    publishlength=reminders.length
96496279301Sopenharmony_ci                    reminderAgent.cancelReminder(0).then(() => {
96596279301Sopenharmony_ci                        reminderAgent.getValidReminders().then((reminders) => {
96696279301Sopenharmony_ci                            cancellength = reminders.length
96796279301Sopenharmony_ci                            firstdiff = publishlength - cancellength;
96896279301Sopenharmony_ci                            expect(0).assertEqual(firstdiff);
96996279301Sopenharmony_ci                        });
97096279301Sopenharmony_ci                    });
97196279301Sopenharmony_ci                });
97296279301Sopenharmony_ci            });
97396279301Sopenharmony_ci        } catch (e) {
97496279301Sopenharmony_ci            expect(true).assertTrue();
97596279301Sopenharmony_ci        };
97696279301Sopenharmony_ci        done();
97796279301Sopenharmony_ci    })
97896279301Sopenharmony_ci
97996279301Sopenharmony_ci    /*
98096279301Sopenharmony_ci     * @tc.name: testReminderHelper028
98196279301Sopenharmony_ci     * @tc.desc: test cancelReminder with not exit reminder.
98296279301Sopenharmony_ci     * @tc.type: FUNC
98396279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EA
98496279301Sopenharmony_ci     */
98596279301Sopenharmony_ci    it("testReminderHelper028", 0, async function (done) {
98696279301Sopenharmony_ci        let timer = {
98796279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
98896279301Sopenharmony_ci            triggerTimeInSeconds: 3
98996279301Sopenharmony_ci        }
99096279301Sopenharmony_ci        let publishlength = -1;
99196279301Sopenharmony_ci        let cancellength = -1;
99296279301Sopenharmony_ci        let firstdiff = -1;
99396279301Sopenharmony_ci        try {
99496279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then(() => {
99596279301Sopenharmony_ci                reminderAgent.getValidReminders((err, reminders) => {
99696279301Sopenharmony_ci                    publishlength = reminders.length;
99796279301Sopenharmony_ci                    reminderAgent.cancelReminder(0, (err, data)=>{
99896279301Sopenharmony_ci                        reminderAgent.getValidReminders((err, reminders) => {
99996279301Sopenharmony_ci                            cancellength = reminders.length;
100096279301Sopenharmony_ci                            firstdiff = publishlength - cancellength;
100196279301Sopenharmony_ci                            expect(0).assertEqual(firstdiff);
100296279301Sopenharmony_ci                        });
100396279301Sopenharmony_ci                    });
100496279301Sopenharmony_ci                });
100596279301Sopenharmony_ci            });
100696279301Sopenharmony_ci        } catch (e) {
100796279301Sopenharmony_ci            expect(true).assertTrue();
100896279301Sopenharmony_ci        };
100996279301Sopenharmony_ci        done();
101096279301Sopenharmony_ci    })
101196279301Sopenharmony_ci
101296279301Sopenharmony_ci        /*
101396279301Sopenharmony_ci     * @tc.name: testReminderHelper029
101496279301Sopenharmony_ci     * @tc.desc: test cancelReminder with exist reminder.
101596279301Sopenharmony_ci     * @tc.type: FUNC
101696279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EA
101796279301Sopenharmony_ci     */
101896279301Sopenharmony_ci    it("testReminderHelper029", 0, async function (done) {
101996279301Sopenharmony_ci        let alarm = {
102096279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
102196279301Sopenharmony_ci            hour: 21,
102296279301Sopenharmony_ci            minute: 14,
102396279301Sopenharmony_ci            title: "this is title",
102496279301Sopenharmony_ci            content: "this is content"
102596279301Sopenharmony_ci        }
102696279301Sopenharmony_ci        let publishlength = -1;
102796279301Sopenharmony_ci        let cancellength = -1;
102896279301Sopenharmony_ci        let firstdiff = -1;
102996279301Sopenharmony_ci        try {
103096279301Sopenharmony_ci            reminderAgent.publishReminder(alarm, (err, reminderId) => {
103196279301Sopenharmony_ci                reminderAgent.getValidReminders((err, reminders) => {
103296279301Sopenharmony_ci                    publishlength = reminders.length;
103396279301Sopenharmony_ci                });
103496279301Sopenharmony_ci                setTimeout(() => {
103596279301Sopenharmony_ci                    reminderAgent.cancelReminder(reminderId, (err, data) => {
103696279301Sopenharmony_ci                        reminderAgent.getValidReminders((err, reminders) => {
103796279301Sopenharmony_ci                            cancellength = reminders.length;
103896279301Sopenharmony_ci                            firstdiff = publishlength - cancellength;
103996279301Sopenharmony_ci                            if (firstdiff === 0 || firstdiff === 1) {
104096279301Sopenharmony_ci                                expect(0).assertEqual(firstdiff);
104196279301Sopenharmony_ci                            }
104296279301Sopenharmony_ci                        });
104396279301Sopenharmony_ci                    });
104496279301Sopenharmony_ci                }, 1000);
104596279301Sopenharmony_ci            });
104696279301Sopenharmony_ci        } catch (e) {
104796279301Sopenharmony_ci            expect(false).assertTrue();
104896279301Sopenharmony_ci        };
104996279301Sopenharmony_ci
105096279301Sopenharmony_ci        done();
105196279301Sopenharmony_ci    })
105296279301Sopenharmony_ci
105396279301Sopenharmony_ci    /*
105496279301Sopenharmony_ci     * @tc.name: testReminderHelper030
105596279301Sopenharmony_ci     * @tc.desc: test cancelReminder with exist reminder.
105696279301Sopenharmony_ci     * @tc.type: FUNC
105796279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EA
105896279301Sopenharmony_ci     */
105996279301Sopenharmony_ci    it("testReminderHelper030", 0, async function (done) {
106096279301Sopenharmony_ci        let alarm = {
106196279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
106296279301Sopenharmony_ci            hour: 21,
106396279301Sopenharmony_ci            minute: 14,
106496279301Sopenharmony_ci            title: "this is title",
106596279301Sopenharmony_ci            content: "this is content"
106696279301Sopenharmony_ci        }
106796279301Sopenharmony_ci        let publishlength = -1;
106896279301Sopenharmony_ci        let cancellength = -1;
106996279301Sopenharmony_ci        let firstdiff = -1;
107096279301Sopenharmony_ci        try {
107196279301Sopenharmony_ci            reminderAgent.publishReminder(alarm, (err, reminderId) => {
107296279301Sopenharmony_ci                reminderAgent.getValidReminders((err, reminders) => {
107396279301Sopenharmony_ci                    publishlength = reminders.length;
107496279301Sopenharmony_ci                });
107596279301Sopenharmony_ci                setTimeout(() => {
107696279301Sopenharmony_ci                    reminderAgent.cancelReminder(reminderId).then(() => {
107796279301Sopenharmony_ci                        reminderAgent.getValidReminders((err, reminders) => {
107896279301Sopenharmony_ci                            cancellength = reminders.length;
107996279301Sopenharmony_ci                            firstdiff = publishlength - cancellength;
108096279301Sopenharmony_ci                            if (firstdiff === 0 || firstdiff === 1) {
108196279301Sopenharmony_ci                                expect(0).assertEqual(firstdiff);
108296279301Sopenharmony_ci                            }
108396279301Sopenharmony_ci                        });
108496279301Sopenharmony_ci                    });
108596279301Sopenharmony_ci                }, 1000);
108696279301Sopenharmony_ci            });
108796279301Sopenharmony_ci        } catch (e) {
108896279301Sopenharmony_ci            expect(false).assertTrue();
108996279301Sopenharmony_ci        };
109096279301Sopenharmony_ci
109196279301Sopenharmony_ci        done();
109296279301Sopenharmony_ci    })
109396279301Sopenharmony_ci
109496279301Sopenharmony_ci    /*
109596279301Sopenharmony_ci     * @tc.name: testReminderHelper031
109696279301Sopenharmony_ci     * @tc.desc: test getValidReminders, verify all the information is correct.
109796279301Sopenharmony_ci     * @tc.type: FUNC
109896279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EB AR000GH8EF
109996279301Sopenharmony_ci     */
110096279301Sopenharmony_ci    it("testReminderHelper031", 0, async function (done) {
110196279301Sopenharmony_ci        var alarm = {
110296279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
110396279301Sopenharmony_ci            hour: 21,
110496279301Sopenharmony_ci            minute: 14,
110596279301Sopenharmony_ci            title: "this is title",
110696279301Sopenharmony_ci            content: "this is content"
110796279301Sopenharmony_ci        }
110896279301Sopenharmony_ci        var timer = {
110996279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
111096279301Sopenharmony_ci            triggerTimeInSeconds: 100
111196279301Sopenharmony_ci        }
111296279301Sopenharmony_ci        try {
111396279301Sopenharmony_ci            reminderAgent.cancelAllReminders((err, data) => {
111496279301Sopenharmony_ci                reminderAgent.publishReminder(timer, (error, reminderId) => {});
111596279301Sopenharmony_ci                reminderAgent.publishReminder(alarm, (error, reminderId) => {});
111696279301Sopenharmony_ci                setTimeout(() => {
111796279301Sopenharmony_ci                    reminderAgent.getValidReminders().then((reminders) => {
111896279301Sopenharmony_ci                        expect(reminders.length).assertEqual(2);
111996279301Sopenharmony_ci                    });
112096279301Sopenharmony_ci                }, 1000);
112196279301Sopenharmony_ci            })
112296279301Sopenharmony_ci        } catch (e) {
112396279301Sopenharmony_ci            expect(false).assertTrue();
112496279301Sopenharmony_ci        };
112596279301Sopenharmony_ci        done();
112696279301Sopenharmony_ci    })
112796279301Sopenharmony_ci
112896279301Sopenharmony_ci    /*
112996279301Sopenharmony_ci     * @tc.name: testReminderHelper032
113096279301Sopenharmony_ci     * @tc.desc: test getValidReminders, verify all the information is correct.
113196279301Sopenharmony_ci     * @tc.type: FUNC
113296279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EB
113396279301Sopenharmony_ci     */
113496279301Sopenharmony_ci    it("testReminderHelper032", 0, async function (done) {
113596279301Sopenharmony_ci        var alarm = {
113696279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
113796279301Sopenharmony_ci            hour: 21,
113896279301Sopenharmony_ci            minute: 14,
113996279301Sopenharmony_ci            title: "this is title",
114096279301Sopenharmony_ci            content: "this is content"
114196279301Sopenharmony_ci        }
114296279301Sopenharmony_ci        var timer = {
114396279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
114496279301Sopenharmony_ci            triggerTimeInSeconds: 100
114596279301Sopenharmony_ci        }
114696279301Sopenharmony_ci        try {
114796279301Sopenharmony_ci            reminderAgent.cancelAllReminders((err, data) => {
114896279301Sopenharmony_ci                reminderAgent.publishReminder(timer, (error, reminderId) => {});
114996279301Sopenharmony_ci                reminderAgent.publishReminder(alarm, (error, reminderId) => {});
115096279301Sopenharmony_ci                setTimeout(() => {
115196279301Sopenharmony_ci                    reminderAgent.getValidReminders((err, reminders) => {
115296279301Sopenharmony_ci                        expect(reminders.length).assertEqual(2);
115396279301Sopenharmony_ci                    });
115496279301Sopenharmony_ci                }, 1000);
115596279301Sopenharmony_ci            })
115696279301Sopenharmony_ci        } catch (e) {
115796279301Sopenharmony_ci            expect(false).assertTrue();
115896279301Sopenharmony_ci        };
115996279301Sopenharmony_ci
116096279301Sopenharmony_ci        done();
116196279301Sopenharmony_ci    })
116296279301Sopenharmony_ci
116396279301Sopenharmony_ci    /*
116496279301Sopenharmony_ci     * @tc.name: testReminderHelper033
116596279301Sopenharmony_ci     * @tc.desc: test removeNotificationSlot with not exist slot.
116696279301Sopenharmony_ci     * @tc.type: FUNC
116796279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8ED
116896279301Sopenharmony_ci     */
116996279301Sopenharmony_ci    it("testReminderHelper033", 0, function (done) {
117096279301Sopenharmony_ci        function reminderCallback(err, data){
117196279301Sopenharmony_ci            let i = 0;
117296279301Sopenharmony_ci            expect(0).assertEqual(i);
117396279301Sopenharmony_ci        }
117496279301Sopenharmony_ci        try {
117596279301Sopenharmony_ci            reminderAgent.removeNotificationSlot(0, reminderCallback);
117696279301Sopenharmony_ci        } catch (e) {
117796279301Sopenharmony_ci            expect(true).assertTrue();
117896279301Sopenharmony_ci        };
117996279301Sopenharmony_ci        done();
118096279301Sopenharmony_ci    })
118196279301Sopenharmony_ci
118296279301Sopenharmony_ci    /*
118396279301Sopenharmony_ci     * @tc.name: testReminderHelper034
118496279301Sopenharmony_ci     * @tc.desc: test removeNotificationSlot with not exist slot.
118596279301Sopenharmony_ci     * @tc.type: FUNC
118696279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8ED
118796279301Sopenharmony_ci     */
118896279301Sopenharmony_ci    it("testReminderHelper034", 0, function (done) {
118996279301Sopenharmony_ci       let promise = new Promise((resolve, reject) => {
119096279301Sopenharmony_ci            try {
119196279301Sopenharmony_ci                reminderAgent.removeNotificationSlot(1).then(() => {
119296279301Sopenharmony_ci                    resolve();
119396279301Sopenharmony_ci                });
119496279301Sopenharmony_ci            } catch (e) {
119596279301Sopenharmony_ci                expect(true).assertTrue();
119696279301Sopenharmony_ci            };
119796279301Sopenharmony_ci           reject(new Error('errr occurred.'));
119896279301Sopenharmony_ci       });
119996279301Sopenharmony_ci       promise.then(() => {
120096279301Sopenharmony_ci       }, err => {
120196279301Sopenharmony_ci           let i = 0;
120296279301Sopenharmony_ci           expect(0).assertEqual(i);
120396279301Sopenharmony_ci       }).catch(res => {});
120496279301Sopenharmony_ci       done();
120596279301Sopenharmony_ci    })
120696279301Sopenharmony_ci
120796279301Sopenharmony_ci    /*
120896279301Sopenharmony_ci     * @tc.name: testReminderHelper035
120996279301Sopenharmony_ci     * @tc.desc: test removeNotificationSlot with exist slot.
121096279301Sopenharmony_ci     * @tc.type: FUNC
121196279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8ED
121296279301Sopenharmony_ci     */
121396279301Sopenharmony_ci    it("testReminderHelper035", 0, async function (done) {
121496279301Sopenharmony_ci        var tarRemoveSlot = {
121596279301Sopenharmony_ci            type: 1
121696279301Sopenharmony_ci        }
121796279301Sopenharmony_ci        try {
121896279301Sopenharmony_ci            reminderAgent.addNotificationSlot(tarRemoveSlot.type, (err, data) => {
121996279301Sopenharmony_ci                reminderAgent.removeNotificationSlot(tarRemoveSlot.type, (err, data) => {
122096279301Sopenharmony_ci                    expect(0).assertEqual(err.code);
122196279301Sopenharmony_ci                });
122296279301Sopenharmony_ci            });
122396279301Sopenharmony_ci        } catch (e) {
122496279301Sopenharmony_ci            expect(true).assertTrue();
122596279301Sopenharmony_ci        };
122696279301Sopenharmony_ci
122796279301Sopenharmony_ci        done();
122896279301Sopenharmony_ci    })
122996279301Sopenharmony_ci
123096279301Sopenharmony_ci    /*
123196279301Sopenharmony_ci     * @tc.name: testReminderHelper036
123296279301Sopenharmony_ci     * @tc.desc: test removeNotificationSlot with exist slot.
123396279301Sopenharmony_ci     * @tc.type: FUNC
123496279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8ED
123596279301Sopenharmony_ci     */
123696279301Sopenharmony_ci    it("testReminderHelper036", 0, async function (done) {
123796279301Sopenharmony_ci        var tarRemoveSlot = {
123896279301Sopenharmony_ci            type: 1
123996279301Sopenharmony_ci        }
124096279301Sopenharmony_ci        try {
124196279301Sopenharmony_ci            reminderAgent.addNotificationSlot(tarRemoveSlot.type, (err, data) => {
124296279301Sopenharmony_ci                reminderAgent.removeNotificationSlot(tarRemoveSlot.type).then(() => {
124396279301Sopenharmony_ci                    let i = 0;
124496279301Sopenharmony_ci                    expect(0).assertEqual(i);
124596279301Sopenharmony_ci                });
124696279301Sopenharmony_ci            });
124796279301Sopenharmony_ci        } catch (e) {
124896279301Sopenharmony_ci            expect(true).assertTrue();
124996279301Sopenharmony_ci        };
125096279301Sopenharmony_ci
125196279301Sopenharmony_ci        done();
125296279301Sopenharmony_ci    })
125396279301Sopenharmony_ci
125496279301Sopenharmony_ci    /*
125596279301Sopenharmony_ci     * @tc.name: testReminderHelper037
125696279301Sopenharmony_ci     * @tc.desc: test getValidReminders.
125796279301Sopenharmony_ci     * @tc.type: FUNC
125896279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EB AR000GH8EG
125996279301Sopenharmony_ci     */
126096279301Sopenharmony_ci    it("testReminderHelper037", 0, async function (done) {
126196279301Sopenharmony_ci        let timer = {
126296279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
126396279301Sopenharmony_ci            triggerTimeInSeconds: 3
126496279301Sopenharmony_ci        }
126596279301Sopenharmony_ci        try {
126696279301Sopenharmony_ci            reminderAgent.publishReminder(timer).then((reminderId) => { });
126796279301Sopenharmony_ci            setTimeout(() => {
126896279301Sopenharmony_ci                reminderAgent.getValidReminders().then((reminders) => {
126996279301Sopenharmony_ci                    expect(reminders.length === 0).assertEqual(true);
127096279301Sopenharmony_ci                });
127196279301Sopenharmony_ci            }, 5000);
127296279301Sopenharmony_ci        } catch (e) {
127396279301Sopenharmony_ci            expect(false).assertTrue();
127496279301Sopenharmony_ci        };
127596279301Sopenharmony_ci        done();
127696279301Sopenharmony_ci    })
127796279301Sopenharmony_ci
127896279301Sopenharmony_ci    /*
127996279301Sopenharmony_ci     * @tc.name:testReminderHelper038
128096279301Sopenharmony_ci     * @tc.desc: test getValidReminders.
128196279301Sopenharmony_ci     * @tc.type: FUNC
128296279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8EB AR000GH8EG
128396279301Sopenharmony_ci     */
128496279301Sopenharmony_ci    it("testReminderHelper038", 0, async function (done) {
128596279301Sopenharmony_ci        let timer = {
128696279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
128796279301Sopenharmony_ci            triggerTimeInSeconds: 3
128896279301Sopenharmony_ci        }
128996279301Sopenharmony_ci        try {
129096279301Sopenharmony_ci            reminderAgent.publishReminder(timer, (err, data) => { });
129196279301Sopenharmony_ci            setTimeout(() => {
129296279301Sopenharmony_ci                reminderAgent.getValidReminders((err, reminders) => {
129396279301Sopenharmony_ci                    expect(reminders.length === 0).assertEqual(true);
129496279301Sopenharmony_ci                });
129596279301Sopenharmony_ci            }, 5000);
129696279301Sopenharmony_ci        } catch (e) {
129796279301Sopenharmony_ci            expect(false).assertTrue();
129896279301Sopenharmony_ci        };
129996279301Sopenharmony_ci
130096279301Sopenharmony_ci        done();
130196279301Sopenharmony_ci    })
130296279301Sopenharmony_ci
130396279301Sopenharmony_ci    /*
130496279301Sopenharmony_ci     * @tc.name: testReminderHelper039
130596279301Sopenharmony_ci     * @tc.desc: test publishReminder a normal alarm.
130696279301Sopenharmony_ci     * @tc.type: FUNC
130796279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8E9 AR00GH8EH
130896279301Sopenharmony_ci     */
130996279301Sopenharmony_ci    it("testReminderHelper039", 0, async function (done) {
131096279301Sopenharmony_ci        let alarm = {
131196279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
131296279301Sopenharmony_ci            hour: 21,
131396279301Sopenharmony_ci            minute: 14,
131496279301Sopenharmony_ci            title: "this is title",
131596279301Sopenharmony_ci            content: "this is content"
131696279301Sopenharmony_ci        }
131796279301Sopenharmony_ci        let expectId = -1;
131896279301Sopenharmony_ci        try {
131996279301Sopenharmony_ci            reminderAgent.publishReminder(alarm).then((reminderId) => {
132096279301Sopenharmony_ci                expectId = reminderId + 1;
132196279301Sopenharmony_ci                reminderAgent.publishReminder(alarm).then((reminderId) => {
132296279301Sopenharmony_ci                    if (reminderId === expectId){
132396279301Sopenharmony_ci                        expect(reminderId).assertEqual(expectId);
132496279301Sopenharmony_ci                    }
132596279301Sopenharmony_ci                });
132696279301Sopenharmony_ci            });
132796279301Sopenharmony_ci        } catch (e) {
132896279301Sopenharmony_ci            expect(true).assertTrue();
132996279301Sopenharmony_ci        };
133096279301Sopenharmony_ci        done();
133196279301Sopenharmony_ci    })
133296279301Sopenharmony_ci
133396279301Sopenharmony_ci    /*
133496279301Sopenharmony_ci     * @tc.name: testReminderHelper040
133596279301Sopenharmony_ci     * @tc.desc: test publishReminder a normal alarm.
133696279301Sopenharmony_ci     * @tc.type: FUNC
133796279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8E9 AR00GH8EH AR000GH8EE
133896279301Sopenharmony_ci     */
133996279301Sopenharmony_ci    it("testReminderHelper040", 0, async function (done) {
134096279301Sopenharmony_ci        let alarm = {
134196279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_ALARM,
134296279301Sopenharmony_ci            hour: 21,
134396279301Sopenharmony_ci            minute: 14,
134496279301Sopenharmony_ci            title: "this is title",
134596279301Sopenharmony_ci            content: "this is content"
134696279301Sopenharmony_ci        }
134796279301Sopenharmony_ci        let expectId = -1;
134896279301Sopenharmony_ci        function reminderCallback(err, reminderId) {
134996279301Sopenharmony_ci            expect(reminderId).assertEqual(expectId);
135096279301Sopenharmony_ci        }
135196279301Sopenharmony_ci        try {
135296279301Sopenharmony_ci            reminderAgent.publishReminder(alarm, (err, reminderId) => {
135396279301Sopenharmony_ci                expectId = reminderId + 1;
135496279301Sopenharmony_ci                reminderAgent.publishReminder(alarm, reminderCallback);
135596279301Sopenharmony_ci            })
135696279301Sopenharmony_ci        } catch (e) {
135796279301Sopenharmony_ci            expect(true).assertTrue();
135896279301Sopenharmony_ci        };
135996279301Sopenharmony_ci        done();
136096279301Sopenharmony_ci    })
136196279301Sopenharmony_ci
136296279301Sopenharmony_ci    /*
136396279301Sopenharmony_ci     * @tc.name: testReminderHelper041
136496279301Sopenharmony_ci     * @tc.desc: test publishReminder.
136596279301Sopenharmony_ci     * @tc.type: FUNC
136696279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8E9 AR00GH8EH
136796279301Sopenharmony_ci     */
136896279301Sopenharmony_ci    it("testReminderHelper041", 0, function (done) {
136996279301Sopenharmony_ci        let calendar = {
137096279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
137196279301Sopenharmony_ci            dateTime : {
137296279301Sopenharmony_ci                year: 2025,
137396279301Sopenharmony_ci                month: 10,
137496279301Sopenharmony_ci                day: 10,
137596279301Sopenharmony_ci                hour: 23,
137696279301Sopenharmony_ci                minute: 30
137796279301Sopenharmony_ci            },
137896279301Sopenharmony_ci            repeatMonths:[2],
137996279301Sopenharmony_ci            repeatDays:[2],
138096279301Sopenharmony_ci            actionButton:[
138196279301Sopenharmony_ci                {
138296279301Sopenharmony_ci                    title:"close",
138396279301Sopenharmony_ci                    type:0
138496279301Sopenharmony_ci                },
138596279301Sopenharmony_ci                {
138696279301Sopenharmony_ci                    title:"snooze",
138796279301Sopenharmony_ci                    type:1
138896279301Sopenharmony_ci                }
138996279301Sopenharmony_ci            ],
139096279301Sopenharmony_ci            wantAgent:{
139196279301Sopenharmony_ci                pkgName:"com.test.pkg",
139296279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
139396279301Sopenharmony_ci            },
139496279301Sopenharmony_ci            maxScreenWantAgent:{
139596279301Sopenharmony_ci                pkgName:"com.test.pkg",
139696279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
139796279301Sopenharmony_ci            },
139896279301Sopenharmony_ci            ringDuration:5,
139996279301Sopenharmony_ci            snoozeTimes:2,
140096279301Sopenharmony_ci            timeInterval:5,
140196279301Sopenharmony_ci            title:"this is title",
140296279301Sopenharmony_ci            content:"this is content",
140396279301Sopenharmony_ci            expiredContent:"this reminder has expired",
140496279301Sopenharmony_ci            snoozeContent:"remind later",
140596279301Sopenharmony_ci            notificationId:100,
140696279301Sopenharmony_ci            slotType:3
140796279301Sopenharmony_ci        }
140896279301Sopenharmony_ci        try {
140996279301Sopenharmony_ci            reminderAgent.publishReminder(calendar).then((reminderId) => {
141096279301Sopenharmony_ci                reminderAgent.getValidReminders().then((reminders) => {
141196279301Sopenharmony_ci                    for (let i = 0; i < reminders.length; i++) {
141296279301Sopenharmony_ci                        console.log("getValidReminders = " + JSON.stringify(reminders[i]));
141396279301Sopenharmony_ci                        console.log("getValidReminders, reminderType = " + reminders[i].reminderType);
141496279301Sopenharmony_ci                        for (let j = 0; j < reminders[i].actionButton.length; j++) {
141596279301Sopenharmony_ci                            console.log("getValidReminders, actionButton.title = " + reminders[i].actionButton[j].title);
141696279301Sopenharmony_ci                            console.log("getValidReminders, actionButton.type = " + reminders[i].actionButton[j].type);
141796279301Sopenharmony_ci                        }
141896279301Sopenharmony_ci                        console.log("getValidReminders, wantAgent.pkgName = " + reminders[i].wantAgent.pkgName);
141996279301Sopenharmony_ci                        console.log("getValidReminders, wantAgent.abilityName = " + reminders[i].wantAgent.abilityName);
142096279301Sopenharmony_ci                        console.log("getValidReminders, maxScreenWantAgent.pkgName = "
142196279301Sopenharmony_ci                            + reminders[i].maxScreenWantAgent.pkgName);
142296279301Sopenharmony_ci                        console.log("getValidReminders, maxScreenWantAgent.abilityName = "
142396279301Sopenharmony_ci                            + reminders[i].maxScreenWantAgent.abilityName);
142496279301Sopenharmony_ci                        expect(reminders[i].ringDuration).assertEqual(5);
142596279301Sopenharmony_ci                        console.log("getValidReminders, ringDuration = " + reminders[i].ringDuration);
142696279301Sopenharmony_ci                        expect(reminders[i].snoozeTimes).assertEqual(2);
142796279301Sopenharmony_ci                        console.log("getValidReminders, snoozeTimes = " + reminders[i].snoozeTimes);
142896279301Sopenharmony_ci                        console.log("getValidReminders, timeInterval = " + reminders[i].timeInterval);
142996279301Sopenharmony_ci                        expect(reminders[i].title).assertEqual("this is title");
143096279301Sopenharmony_ci                        console.log("getValidReminders, title = " + reminders[i].title);
143196279301Sopenharmony_ci                        expect(reminders[i].content).assertEqual("this is content");
143296279301Sopenharmony_ci                        console.log("getValidReminders, content = " + reminders[i].content);
143396279301Sopenharmony_ci                        expect(reminders[i].expiredContent).assertEqual("this reminder has expired");
143496279301Sopenharmony_ci                        console.log("getValidReminders, expiredContent = " + reminders[i].expiredContent);
143596279301Sopenharmony_ci                        expect(reminders[i].snoozeContent).assertEqual("remind later");
143696279301Sopenharmony_ci                        console.log("getValidReminders, snoozeContent = " + reminders[i].snoozeContent);
143796279301Sopenharmony_ci                        expect(reminders[i].notificationId).assertEqual(100);
143896279301Sopenharmony_ci                        console.log("getValidReminders, notificationId = " + reminders[i].notificationId);
143996279301Sopenharmony_ci                        console.log("getValidReminders, slotType = " + reminders[i].slotType);
144096279301Sopenharmony_ci                    }
144196279301Sopenharmony_ci                })
144296279301Sopenharmony_ci            });
144396279301Sopenharmony_ci        } catch (e) {
144496279301Sopenharmony_ci            expect(true).assertTrue();
144596279301Sopenharmony_ci        };
144696279301Sopenharmony_ci        done();
144796279301Sopenharmony_ci    })
144896279301Sopenharmony_ci
144996279301Sopenharmony_ci    /*
145096279301Sopenharmony_ci     * @tc.name: testReminderHelper042
145196279301Sopenharmony_ci     * @tc.desc: test publishReminder.
145296279301Sopenharmony_ci     * @tc.type: FUNC
145396279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8E9 AR00GH8EH
145496279301Sopenharmony_ci     */
145596279301Sopenharmony_ci    it("testReminderHelper042", 0, async function (done) {
145696279301Sopenharmony_ci        let calendar = {
145796279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
145896279301Sopenharmony_ci            dateTime : {
145996279301Sopenharmony_ci                year: 2025,
146096279301Sopenharmony_ci                month: 10,
146196279301Sopenharmony_ci                day: 10,
146296279301Sopenharmony_ci                hour: 23,
146396279301Sopenharmony_ci                minute: 30
146496279301Sopenharmony_ci            },
146596279301Sopenharmony_ci            repeatMonths:[2],
146696279301Sopenharmony_ci            repeatDays:[2],
146796279301Sopenharmony_ci            actionButton:[
146896279301Sopenharmony_ci                {
146996279301Sopenharmony_ci                    title:"close",
147096279301Sopenharmony_ci                    type:0
147196279301Sopenharmony_ci                },
147296279301Sopenharmony_ci                {
147396279301Sopenharmony_ci                    title:"snooze",
147496279301Sopenharmony_ci                    type:1
147596279301Sopenharmony_ci                }
147696279301Sopenharmony_ci            ],
147796279301Sopenharmony_ci            wantAgent:{
147896279301Sopenharmony_ci                pkgName:"com.test.pkg",
147996279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
148096279301Sopenharmony_ci            },
148196279301Sopenharmony_ci            maxScreenWantAgent:{
148296279301Sopenharmony_ci                pkgName:"com.test.pkg",
148396279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
148496279301Sopenharmony_ci            },
148596279301Sopenharmony_ci            ringDuration:5,
148696279301Sopenharmony_ci            snoozeTimes:2,
148796279301Sopenharmony_ci            timeInterval:5,
148896279301Sopenharmony_ci            title:"this is title",
148996279301Sopenharmony_ci            content:"this is content",
149096279301Sopenharmony_ci            expiredContent:"this reminder has expired",
149196279301Sopenharmony_ci            snoozeContent:"remind later",
149296279301Sopenharmony_ci            notificationId:100,
149396279301Sopenharmony_ci            slotType:3
149496279301Sopenharmony_ci        }
149596279301Sopenharmony_ci        try {
149696279301Sopenharmony_ci            reminderAgent.publishReminder(calendar, (err,reminderId) => {
149796279301Sopenharmony_ci                reminderAgent.getValidReminders().then((reminders) => {
149896279301Sopenharmony_ci                    for (let i = 0; i < reminders.length; i++) {
149996279301Sopenharmony_ci                        console.log("getValidReminders = " + JSON.stringify(reminders[i]));
150096279301Sopenharmony_ci                        console.log("getValidReminders, reminderType = " + reminders[i].reminderType);
150196279301Sopenharmony_ci                        for (let j = 0; j < reminders[i].actionButton.length; j++) {
150296279301Sopenharmony_ci                            console.log("getValidReminders, actionButton.title = " + reminders[i].actionButton[j].title);
150396279301Sopenharmony_ci                            console.log("getValidReminders, actionButton.type = " + reminders[i].actionButton[j].type);
150496279301Sopenharmony_ci                        }
150596279301Sopenharmony_ci                        console.log("getValidReminders, wantAgent.pkgName = " + reminders[i].wantAgent.pkgName);
150696279301Sopenharmony_ci                        console.log("getValidReminders, wantAgent.abilityName = " + reminders[i].wantAgent.abilityName);
150796279301Sopenharmony_ci                        console.log("getValidReminders, maxScreenWantAgent.pkgName = "
150896279301Sopenharmony_ci                            + reminders[i].maxScreenWantAgent.pkgName);
150996279301Sopenharmony_ci                        console.log("getValidReminders, maxScreenWantAgent.abilityName = "
151096279301Sopenharmony_ci                            + reminders[i].maxScreenWantAgent.abilityName);
151196279301Sopenharmony_ci                        expect(reminders[i].ringDuration).assertEqual(5);
151296279301Sopenharmony_ci                        console.log("getValidReminders, ringDuration = " + reminders[i].ringDuration);
151396279301Sopenharmony_ci                        expect(reminders[i].snoozeTimes).assertEqual(2);
151496279301Sopenharmony_ci                        console.log("getValidReminders, snoozeTimes = " + reminders[i].snoozeTimes);
151596279301Sopenharmony_ci                        console.log("getValidReminders, timeInterval = " + reminders[i].timeInterval);
151696279301Sopenharmony_ci                        expect(reminders[i].title).assertEqual("this is title");
151796279301Sopenharmony_ci                        console.log("getValidReminders, title = " + reminders[i].title);
151896279301Sopenharmony_ci                        expect(reminders[i].content).assertEqual("this is content");
151996279301Sopenharmony_ci                        console.log("getValidReminders, content = " + reminders[i].content);
152096279301Sopenharmony_ci                        expect(reminders[i].expiredContent).assertEqual("this reminder has expired");
152196279301Sopenharmony_ci                        console.log("getValidReminders, expiredContent = " + reminders[i].expiredContent);
152296279301Sopenharmony_ci                        expect(reminders[i].snoozeContent).assertEqual("remind later");
152396279301Sopenharmony_ci                        console.log("getValidReminders, snoozeContent = " + reminders[i].snoozeContent);
152496279301Sopenharmony_ci                        expect(reminders[i].notificationId).assertEqual(100);
152596279301Sopenharmony_ci                        console.log("getValidReminders, notificationId = " + reminders[i].notificationId);
152696279301Sopenharmony_ci                        console.log("getValidReminders, slotType = " + reminders[i].slotType);
152796279301Sopenharmony_ci                    }
152896279301Sopenharmony_ci                })
152996279301Sopenharmony_ci            });
153096279301Sopenharmony_ci        } catch (e) {
153196279301Sopenharmony_ci            expect(true).assertTrue();
153296279301Sopenharmony_ci        };
153396279301Sopenharmony_ci        done();
153496279301Sopenharmony_ci    })
153596279301Sopenharmony_ci
153696279301Sopenharmony_ci    /*
153796279301Sopenharmony_ci     * @tc.name: testReminderHelper043
153896279301Sopenharmony_ci     * @tc.desc: test publishReminder.
153996279301Sopenharmony_ci     * @tc.type: FUNC
154096279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8E9 AR00GH8EH
154196279301Sopenharmony_ci     */
154296279301Sopenharmony_ci    it("testReminderHelper043", 0, async function (done) {
154396279301Sopenharmony_ci        let calendar = {
154496279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
154596279301Sopenharmony_ci            dateTime : {
154696279301Sopenharmony_ci                year: 2025,
154796279301Sopenharmony_ci                month: 10,
154896279301Sopenharmony_ci                day: 10,
154996279301Sopenharmony_ci                hour: 23,
155096279301Sopenharmony_ci                minute: 30
155196279301Sopenharmony_ci            },
155296279301Sopenharmony_ci            repeatMonths:[2],
155396279301Sopenharmony_ci            repeatDays:[2],
155496279301Sopenharmony_ci            actionButton:[
155596279301Sopenharmony_ci                {
155696279301Sopenharmony_ci                    title:"close",
155796279301Sopenharmony_ci                    type:0
155896279301Sopenharmony_ci                },
155996279301Sopenharmony_ci                {
156096279301Sopenharmony_ci                    title:"snooze",
156196279301Sopenharmony_ci                    type:1
156296279301Sopenharmony_ci                }
156396279301Sopenharmony_ci            ],
156496279301Sopenharmony_ci            wantAgent:{
156596279301Sopenharmony_ci                pkgName:"com.test.pkg",
156696279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
156796279301Sopenharmony_ci            },
156896279301Sopenharmony_ci            maxScreenWantAgent:{
156996279301Sopenharmony_ci                pkgName:"com.test.pkg",
157096279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
157196279301Sopenharmony_ci            },
157296279301Sopenharmony_ci            ringDuration:5,
157396279301Sopenharmony_ci            snoozeTimes:2,
157496279301Sopenharmony_ci            timeInterval:5,
157596279301Sopenharmony_ci            title:"this is title",
157696279301Sopenharmony_ci            content:"this is content",
157796279301Sopenharmony_ci            expiredContent:"this reminder has expired",
157896279301Sopenharmony_ci            snoozeContent:"remind later",
157996279301Sopenharmony_ci            notificationId:100,
158096279301Sopenharmony_ci            slotType:3
158196279301Sopenharmony_ci        }
158296279301Sopenharmony_ci        let expectId = -1;
158396279301Sopenharmony_ci        try {
158496279301Sopenharmony_ci            reminderAgent.publishReminder(calendar).then((reminderId) => {
158596279301Sopenharmony_ci                expectId = reminderId + 1;
158696279301Sopenharmony_ci                reminderAgent.publishReminder(calendar).then((reminderId) => {
158796279301Sopenharmony_ci                    if (reminderId === expectId){
158896279301Sopenharmony_ci                        expect(reminderId).assertEqual(expectId);
158996279301Sopenharmony_ci                    }
159096279301Sopenharmony_ci                });
159196279301Sopenharmony_ci            });
159296279301Sopenharmony_ci        } catch (e) {
159396279301Sopenharmony_ci            expect(true).assertTrue();
159496279301Sopenharmony_ci        };
159596279301Sopenharmony_ci        done();
159696279301Sopenharmony_ci    })
159796279301Sopenharmony_ci
159896279301Sopenharmony_ci    /*
159996279301Sopenharmony_ci     * @tc.name: testReminderHelper044
160096279301Sopenharmony_ci     * @tc.desc: test publishReminder.
160196279301Sopenharmony_ci     * @tc.type: FUNC
160296279301Sopenharmony_ci     * @tc.require: SR000GGTRB AR000GH8E9 AR00GH8EH
160396279301Sopenharmony_ci     */
160496279301Sopenharmony_ci    it("testReminderHelper044", 0, async function (done) {
160596279301Sopenharmony_ci        let calendar = {
160696279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_CALENDAR,
160796279301Sopenharmony_ci            dateTime : {
160896279301Sopenharmony_ci                year: 2025,
160996279301Sopenharmony_ci                month: 10,
161096279301Sopenharmony_ci                day: 10,
161196279301Sopenharmony_ci                hour: 23,
161296279301Sopenharmony_ci                minute: 30
161396279301Sopenharmony_ci            },
161496279301Sopenharmony_ci            repeatMonths:[2],
161596279301Sopenharmony_ci            repeatDays:[2],
161696279301Sopenharmony_ci            actionButton:[
161796279301Sopenharmony_ci                {
161896279301Sopenharmony_ci                    title:"close",
161996279301Sopenharmony_ci                    type:0
162096279301Sopenharmony_ci                },
162196279301Sopenharmony_ci                {
162296279301Sopenharmony_ci                    title:"snooze",
162396279301Sopenharmony_ci                    type:1
162496279301Sopenharmony_ci                }
162596279301Sopenharmony_ci            ],
162696279301Sopenharmony_ci            wantAgent:{
162796279301Sopenharmony_ci                pkgName:"com.test.pkg",
162896279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
162996279301Sopenharmony_ci            },
163096279301Sopenharmony_ci            maxScreenWantAgent:{
163196279301Sopenharmony_ci                pkgName:"com.test.pkg",
163296279301Sopenharmony_ci                abilityName:"com.test.pkg.MainAbility"
163396279301Sopenharmony_ci            },
163496279301Sopenharmony_ci            ringDuration:5,
163596279301Sopenharmony_ci            snoozeTimes:2,
163696279301Sopenharmony_ci            timeInterval:5,
163796279301Sopenharmony_ci            title:"this is title",
163896279301Sopenharmony_ci            content:"this is content",
163996279301Sopenharmony_ci            expiredContent:"this reminder has expired",
164096279301Sopenharmony_ci            snoozeContent:"remind later",
164196279301Sopenharmony_ci            notificationId:100,
164296279301Sopenharmony_ci            slotType:3
164396279301Sopenharmony_ci        }
164496279301Sopenharmony_ci        let expectId = -1;
164596279301Sopenharmony_ci        function reminderCallback(err, reminderId) {
164696279301Sopenharmony_ci            expect(reminderId).assertEqual(expectId);
164796279301Sopenharmony_ci        }
164896279301Sopenharmony_ci        try {
164996279301Sopenharmony_ci            reminderAgent.publishReminder(calendar, (err, reminderId) => {
165096279301Sopenharmony_ci                expectId = reminderId + 1;
165196279301Sopenharmony_ci                reminderAgent.publishReminder(calendar, reminderCallback);
165296279301Sopenharmony_ci            })
165396279301Sopenharmony_ci        } catch (e) {
165496279301Sopenharmony_ci            expect(true).assertTrue();
165596279301Sopenharmony_ci        };
165696279301Sopenharmony_ci        done();
165796279301Sopenharmony_ci    })
165896279301Sopenharmony_ci
165996279301Sopenharmony_ci    /*
166096279301Sopenharmony_ci     * @tc.name: testReminderHelper045
166196279301Sopenharmony_ci     * @tc.desc: test publishReminder (max number limit of each application)
166296279301Sopenharmony_ci     * @tc.type: FUNC
166396279301Sopenharmony_ci     * @tc.require: SR000GGTRE AR000GH8E9 AR00GH8EH
166496279301Sopenharmony_ci     */
166596279301Sopenharmony_ci    it("testReminderHelper045", 0, async function (done) {
166696279301Sopenharmony_ci        let timer = {
166796279301Sopenharmony_ci            reminderType: reminderAgent.ReminderType.REMINDER_TYPE_TIMER,
166896279301Sopenharmony_ci            triggerTimeInSeconds: 100
166996279301Sopenharmony_ci        }
167096279301Sopenharmony_ci        let maxLimitNumsOfApp = 30;
167196279301Sopenharmony_ci        let firstId = 0;
167296279301Sopenharmony_ci        let secondId = 0;
167396279301Sopenharmony_ci        let diffId = 0;
167496279301Sopenharmony_ci        for (let i = 0; i < maxLimitNumsOfApp; i++) {
167596279301Sopenharmony_ci            (function (i) {
167696279301Sopenharmony_ci                var i = i;
167796279301Sopenharmony_ci                setTimeout(function () {
167896279301Sopenharmony_ci                    try {
167996279301Sopenharmony_ci                        reminderAgent.publishReminder(timer).then((reminderId) => {
168096279301Sopenharmony_ci                            if (i === 0) {
168196279301Sopenharmony_ci                                firstId = reminderId
168296279301Sopenharmony_ci                            }
168396279301Sopenharmony_ci                            if (i === 29) {
168496279301Sopenharmony_ci                                secondId = reminderId
168596279301Sopenharmony_ci                                diffId = secondId - firstId
168696279301Sopenharmony_ci                                expect(29).assertEqual(diffId);
168796279301Sopenharmony_ci                                i = null
168896279301Sopenharmony_ci                            }
168996279301Sopenharmony_ci                        });
169096279301Sopenharmony_ci                    } catch (e) {
169196279301Sopenharmony_ci                        expect(true).assertTrue();
169296279301Sopenharmony_ci                    };
169396279301Sopenharmony_ci                }, 500 * i);
169496279301Sopenharmony_ci            })(i);
169596279301Sopenharmony_ci        }
169696279301Sopenharmony_ci        done();
169796279301Sopenharmony_ci    })
169896279301Sopenharmony_ci})