1import { paramMock } from "../utils" 2 3export function mockReminderAgent() { 4 const infoMock = { 5 reminderId: 1, 6 info: "[PC preview] unknown info" 7 } 8 const reminderReq = { 9 reminderType: 1, 10 actionButton: [ 11 { 12 title: "[PC preview] unknown title", 13 type: 0 14 } 15 ], 16 wantAgent: { 17 pkgName: "[PC preview] unknown pkg nam", 18 abilityName: "[PC preview] unknown ability name" 19 }, 20 maxScreenWantAgent: { 21 pkgName: "[PC preview] unknown pkg name", 22 abilityName: "[PC preview] unknown ability name" 23 }, 24 ringDuration: 1, 25 snoozeTimes: 1, 26 timeInterval: 1, 27 title: "[PC preview] unknown title", 28 content: "[PC preview] unknown content", 29 expiredContent: "[PC preview] unknown expiredContent", 30 snoozeContent: "[PC preview] unknown snoozeContent", 31 notificationId: 1, 32 slotType: 3 33 } 34 const reminderReqs = [ 35 reminderReq 36 ] 37 global.ohosplugin.reminderAgent = { 38 publishReminder: function (...args) { 39 console.warn("reminderAgent.publishReminder interface mocked in the Previewer." + 40 "How this interface works on the Previewer may be different from that on a real device.") 41 const len = args.length 42 if (typeof args[len - 1] === 'function') { 43 args[len - 1].call(this, paramMock.businessErrorMock, infoMock.reminderId) 44 } else { 45 return new Promise((resolve) => { 46 resolve(infoMock.reminderId) 47 }); 48 } 49 }, 50 getValidReminders: function (...args) { 51 console.warn("reminderAgent.getValidReminders interface mocked in the Previewer." + 52 "How this interface works on the Previewer may be different from that on a real device.") 53 const len = args.length 54 if (typeof args[len - 1] === 'function') { 55 args[len - 1].call(this, paramMock.businessErrorMock, reminderReqs) 56 } else { 57 return new Promise((resolve) => { 58 resolve(reminderReqs) 59 }); 60 } 61 }, 62 cancelReminder: function (...args) { 63 console.warn("reminderAgent.cancelReminder interface mocked in the Previewer." + 64 "How this interface works on the Previewer may be different from that on a real device.") 65 const len = args.length 66 if (typeof args[len - 1] === 'function') { 67 args[len - 1].call(this, paramMock.businessErrorMock) 68 } else { 69 return new Promise((resolve) => { 70 resolve() 71 }); 72 } 73 }, 74 cancelAllReminders: function (...args) { 75 console.warn("reminderAgent.cancelAllReminders interface mocked in the Previewer." + 76 "How this interface works on the Previewer may be different from that on a real device.") 77 const len = args.length 78 if (typeof args[len - 1] === 'function') { 79 args[len - 1].call(this, paramMock.businessErrorMock) 80 } else { 81 return new Promise((resolve) => { 82 resolve() 83 }); 84 } 85 }, 86 addNotificationSlot: function (...args) { 87 console.warn("reminderAgent.addNotificationSlot interface mocked in the Previewer." + 88 "How this interface works on the Previewer may be different from that on a real device.") 89 const len = args.length 90 if (typeof args[len - 1] === 'function') { 91 args[len - 1].call(this, paramMock.businessErrorMock) 92 } else { 93 return new Promise((resolve) => { 94 resolve() 95 }); 96 } 97 }, 98 removeNotificationSlot: function (...args) { 99 console.warn("reminderAgent.removeNotificationSlot interface mocked in the Previewer." + 100 "How this interface works on the Previewer may be different from that on a real device.") 101 const len = args.length 102 if (typeof args[len - 1] === 'function') { 103 args[len - 1].call(this, paramMock.businessErrorMock) 104 } else { 105 return new Promise((resolve) => { 106 resolve() 107 }); 108 } 109 } 110 } 111}