1/* 2 * Copyright (c) 2021 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16import { paramMock } from "../utils" 17 18export function mockSystemTime() { 19 const systemTime = { 20 setTime: function (...args) { 21 console.warn('systemTime.setTime interface mocked in the Previewer. How this interface works on the' 22 + 'Previewer may be different from that on a real device.'); 23 const len = args.length; 24 if (typeof args[len - 1] === 'function') { 25 args[len - 1].call(this, paramMock.businessErrorMock); 26 } else { 27 return new Promise((resolve, reject) => { 28 resolve(); 29 }); 30 } 31 }, 32 getCurrentTime: function (...args) { 33 console.warn('systemTime.getCurrentTime interface mocked in the Previewer. How this interface works on the' 34 + 'Previewer may be different from that on a real device.'); 35 const len = args.length; 36 if (typeof args[len - 1] === 'function') { 37 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 38 } else { 39 return new Promise((resolve, reject) => { 40 resolve(paramMock.paramNumberMock); 41 }); 42 } 43 }, 44 getCurrentTimeNs: function (...args) { 45 console.warn('systemTime.getCurrentTimeNs interface mocked in the Previewer.' 46 + 'How this interface works on the Previewer may be different from that on a real device.'); 47 const len = args.length; 48 if (typeof args[len - 1] === 'function') { 49 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 50 } else { 51 return new Promise((resolve, reject) => { 52 resolve(paramMock.paramNumberMock); 53 }); 54 } 55 }, 56 getRealActiveTime: function (...args) { 57 console.warn('systemTime.getRealActiveTime interface mocked in the Previewer.' 58 + 'How this interface works on the Previewer may be different from that on a real device.'); 59 const len = args.length; 60 if (typeof args[len - 1] === 'function') { 61 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 62 } else { 63 return new Promise((resolve, reject) => { 64 resolve(paramMock.paramNumberMock); 65 }); 66 } 67 }, 68 getRealActiveTimeNs: function (...args) { 69 console.warn('systemTime.getRealActiveTimeNs interface mocked in the Previewer.' 70 + 'How this interface works on the Previewer may be different from that on a real device.'); 71 const len = args.length; 72 if (typeof args[len - 1] === 'function') { 73 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 74 } else { 75 return new Promise((resolve, reject) => { 76 resolve(paramMock.paramNumberMock); 77 }); 78 } 79 }, 80 getRealTime: function (...args) { 81 console.warn('systemTime.getRealTime interface mocked in the Previewer. How this interface works on the' 82 + 'Previewer may be different from that on a real device.'); 83 const len = args.length; 84 if (typeof args[len - 1] === 'function') { 85 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 86 } else { 87 return new Promise((resolve, reject) => { 88 resolve(paramMock.paramNumberMock); 89 }); 90 } 91 }, 92 getRealTimeNs: function (...args) { 93 console.warn('systemTime.getRealTimeNs interface mocked in the Previewer. How this interface works on the' 94 + 'Previewer may be different from that on a real device.'); 95 const len = args.length; 96 if (typeof args[len - 1] === 'function') { 97 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramNumberMock); 98 } else { 99 return new Promise((resolve, reject) => { 100 resolve(paramMock.paramNumberMock); 101 }); 102 } 103 }, 104 setDate: function (...args) { 105 console.warn('systemTime.setDate interface mocked in the Previewer. How this interface works on the' 106 + 'Previewer may be different from that on a real device.'); 107 const len = args.length; 108 if (typeof args[len - 1] === 'function') { 109 args[len - 1].call(this, paramMock.businessErrorMock); 110 } else { 111 return new Promise((resolve, reject) => { 112 resolve(); 113 }); 114 } 115 }, 116 getDate: function (...args) { 117 console.warn('systemTime.getDate interface mocked in the Previewer. How this interface works on the' 118 + 'Previewer may be different from that on a real device.'); 119 const len = args.length; 120 if (typeof args[len - 1] === 'function') { 121 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramObjectMock); 122 } else { 123 return new Promise((resolve, reject) => { 124 resolve(paramMock.paramObjectMock); 125 }); 126 } 127 }, 128 setTimezone: function (...args) { 129 console.warn('systemTime.setTimezone interface mocked in the Previewer. How this interface works on the' 130 + 'Previewer may be different from that on a real device.'); 131 const len = args.length; 132 if (typeof args[len - 1] === 'function') { 133 args[len - 1].call(this, paramMock.businessErrorMock); 134 } else { 135 return new Promise((resolve, reject) => { 136 resolve(); 137 }); 138 } 139 }, 140 getTimeZone: function (...args) { 141 console.warn('systemTime.getTimeZone interface mocked in the Previewer. How this interface works on the' 142 + 'Previewer may be different from that on a real device.'); 143 const len = args.length; 144 if (typeof args[len - 1] === 'function') { 145 args[len - 1].call(this, paramMock.businessErrorMock, paramMock.paramStringMock); 146 } else { 147 return new Promise((resolve, reject) => { 148 resolve(paramMock.paramStringMock); 149 }); 150 } 151 }, 152 } 153 return systemTime 154}