@eohjsc/react-native-smart-city 0.7.3-rc0 → 0.7.3-rc10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +17 -15
- package/src/commons/Action/__test__/ItemQuickAction.test.js +5 -5
- package/src/commons/ActionGroup/OnOffSmartLock/PasscodeList/__test__/index.test.js +5 -5
- package/src/commons/ActionGroup/ThreeButtonTemplate/__test__/ThreeButtonCircle.test.js +2 -2
- package/src/commons/ActionGroup/ThreeButtonTemplate/__test__/ThreeButtonDefault.test.js +2 -2
- package/src/commons/ActionGroup/__test__/ColorPickerTemplate.test.js +9 -10
- package/src/commons/ActionGroup/__test__/OnOffSmartLock.test.js +5 -5
- package/src/commons/ActionGroup/__test__/OnOffTemplate.test.js +5 -5
- package/src/commons/ActionGroup/__test__/OptionsDropdownTemplate.test.js +8 -8
- package/src/commons/ActionGroup/__test__/StatesGridActionTemplate.test.js +3 -3
- package/src/commons/ActionGroup/__test__/TimerActionTemplate.test.js +6 -6
- package/src/commons/ActionGroup/__test__/TwoButtonTemplate.test.js +1 -1
- package/src/commons/ActionGroup/__test__/index.test.js +8 -8
- package/src/commons/ActionTemplate/__test__/index.test.js +4 -4
- package/src/commons/Automate/__test__/ItemAutomate.test.js +2 -2
- package/src/commons/ChartAggregationOption/__test__/FourButtonFilterHistory.test.js +2 -2
- package/src/commons/Dashboard/MyPinnedSharedUnit/__test__/MyPinnedSharedUnit.test.js +8 -9
- package/src/commons/Dashboard/MyUnit/__test__/MyUnit.test.js +7 -7
- package/src/commons/Device/Emergency/__test__/EmergencyButton.test.js +1 -1
- package/src/commons/Device/FlatListItems.js +17 -16
- package/src/commons/Device/Hanet/ItemHanetDevice.test.js +3 -3
- package/src/commons/FieldTemplate/PasscodeField/__test__/index.test.js +3 -3
- package/src/commons/FieldTemplate/ScheduleField/__test__/index.test.js +6 -6
- package/src/commons/FlatListDnD/__test__/index.test.js +4 -4
- package/src/commons/FlatListDnD/index.js +12 -9
- package/src/commons/GroupCheckBox/__test__/GroupCheckBox.test.js +3 -3
- package/src/commons/Header/__test__/HeaderCT.test.js +3 -3
- package/src/commons/IconComponent/index.js +1 -1
- package/src/commons/ImagePicker/__test__/ImagePicker.test.js +5 -5
- package/src/commons/MediaPlayerDetail/__test__/MediaPlayerDetail.test.js +6 -4
- package/src/commons/OneTapTemplate/__test__/StatesGridActionTemplate.test.js +5 -5
- package/src/commons/Popover/__test__/index.test.js +3 -3
- package/src/commons/Processing/__test__/Connecting.test.js +4 -4
- package/src/commons/SelectUnit/__test__/SelectUnit.test.js +5 -5
- package/src/commons/SubUnit/OneTap/index.js +9 -8
- package/src/commons/SubUnit/__test__/ShortDetail.test.js +8 -8
- package/src/commons/Widgets/IFrame/__tests__/IFrame.test.js +9 -13
- package/src/hooks/Common/__test__/useAndroidTranslucentStatusBar.test.js +5 -5
- package/src/hooks/IoT/__test__/useHomeAssistantConnection.test.js +12 -12
- package/src/hooks/IoT/__test__/useWatchConfigs.test.js +3 -3
- package/src/hooks/IoT/useRemoteControl.js +6 -6
- package/src/hooks/useMqtt.js +2 -2
- package/src/iot/RemoteControl/Internet.js +2 -2
- package/src/iot/RemoteControl/__test__/Internet.test.js +7 -7
- package/src/screens/AddLocationMaps/__test__/index.test.js +12 -12
- package/src/screens/AddNewGateway/ShareWifiPassword.js +16 -15
- package/src/screens/AddNewGateway/__test__/AddNewGateway.test.js +7 -7
- package/src/screens/AddNewGateway/__test__/ConnectingWifiDevice.test.js +8 -8
- package/src/screens/AddNewGateway/__test__/ConnectingZigbeeDevice.test.js +7 -7
- package/src/screens/AddNewGateway/__test__/RenameNewDevices.test.js +8 -8
- package/src/screens/AddNewGateway/__test__/ScanGatewayQR.test.js +5 -5
- package/src/screens/AddNewGateway/__test__/SelectDeviceUnit.test.js +4 -4
- package/src/screens/AddNewGateway/__test__/SelectModbusGateway.test.js +6 -6
- package/src/screens/AddNewGateway/__test__/SelectZigbeeGateway.test.js +6 -6
- package/src/screens/AddNewGateway/__test__/ShareWifiPassword.test.js +0 -4
- package/src/screens/AddNewGateway/hooks/__Tests__/useWifiManage.test.js +2 -2
- package/src/screens/AllGateway/DetailConfigActionModbus/__test__/index.test.js +6 -6
- package/src/screens/AllGateway/DeviceInternalDetail/__test__/index.test.js +19 -17
- package/src/screens/AllGateway/DeviceModbusDetail/__test__/index.test.js +19 -17
- package/src/screens/AllGateway/DeviceZigbeeDetail/__test__/index.test.js +18 -16
- package/src/screens/AllGateway/GatewayDetail/__test__/index.test.js +43 -35
- package/src/screens/AllGateway/GatewayInfo/__test__/index.test.js +13 -13
- package/src/screens/AllGateway/__test__/index.test.js +6 -6
- package/src/screens/AllGateway/components/Detail/__test__/index.test.js +3 -5
- package/src/screens/AllGateway/components/GatewayItem/__test__/index.test.js +3 -3
- package/src/screens/AllGateway/components/TabPaneCT/__test__/index.test.js +6 -6
- package/src/screens/AllGateway/hooks/__test__/index.test.js +2 -2
- package/src/screens/AllGateway/test-utils.js +3 -4
- package/src/screens/Automate/AddNewAction/NewActionWrapper.js +7 -7
- package/src/screens/Automate/AddNewAction/SelectControlDevices.js +3 -3
- package/src/screens/Automate/AddNewAction/__test__/ChooseAction.test.js +13 -13
- package/src/screens/Automate/AddNewAction/__test__/SelectControlDevices.test.js +14 -8
- package/src/screens/Automate/AddNewAction/__test__/SelectMonitorDevices.test.js +13 -7
- package/src/screens/Automate/AddNewAction/__test__/SetupScriptDelay.test.js +9 -9
- package/src/screens/Automate/AddNewAction/__test__/SetupScriptNotify.test.js +10 -10
- package/src/screens/Automate/AddNewAutoSmart/AddTypeSmart.js +4 -3
- package/src/screens/Automate/AddNewAutoSmart/__test__/AddNewAutoSmart.test.js +13 -8
- package/src/screens/Automate/EditActionsList/__tests__/UpdateActionScript.test.js +8 -8
- package/src/screens/Automate/EditActionsList/__tests__/UpdateDelayScript.test.js +6 -6
- package/src/screens/Automate/EditActionsList/__tests__/UpdateNotifyScript.test.js +7 -7
- package/src/screens/Automate/EditActionsList/index.js +19 -17
- package/src/screens/Automate/OneTap/__test__/AddNewOneTap.test.js +16 -7
- package/src/screens/Automate/Scenario/__test__/AddNewOneTap.test.js +15 -7
- package/src/screens/Automate/ScriptDetail/Components/RenameScript.js +4 -7
- package/src/screens/Automate/ScriptDetail/__test__/index.test.js +1 -1
- package/src/screens/Automate/ScriptDetail/__test__/useStarredScript.test.js +6 -6
- package/src/screens/Automate/ScriptDetail/index.js +18 -18
- package/src/screens/Automate/SetSchedule/__test__/SelectWeekday.test.js +4 -4
- package/src/screens/Automate/SetSchedule/__test__/index.test.js +28 -18
- package/src/screens/Automate/SetSchedule/index.js +7 -7
- package/src/screens/ChangePosition/__test__/index.test.js +6 -6
- package/src/screens/ChangePosition/index.js +2 -1
- package/src/screens/Device/EditDevice/__test__/EditDevice.test.js +9 -9
- package/src/screens/Device/__test__/detail.test.js +12 -12
- package/src/screens/Device/__test__/mqttDetail.test.js +9 -9
- package/src/screens/Device/components/SensorDisplayItem.js +5 -5
- package/src/screens/Drawer/Drawer.test.js +2 -2
- package/src/screens/EmergencyContacts/__test__/EmergencyContactsSelectContacts.test.js +7 -7
- package/src/screens/EnterPassword/__test__/EnterPassword.test.js +8 -8
- package/src/screens/GuestInfo/components/__test__/AccessScheduleSheet.test.js +3 -3
- package/src/screens/HanetCamera/__test__/Detail.test.js +9 -9
- package/src/screens/HanetCamera/__test__/MemberInfo.test.js +10 -10
- package/src/screens/MoveToAnotherSubUnit/__test__/index.test.js +9 -9
- package/src/screens/Notification/__test__/Notification.test.js +9 -9
- package/src/screens/Notification/components/NotificationItem.js +1 -2
- package/src/screens/Notification/styles/NotificationItemStyles.js +0 -1
- package/src/screens/PlayBackCamera/__test__/index.test.js +1 -1
- package/src/screens/ScanChipQR/components/QRScan/__test__/QRScan.test.js +1 -1
- package/src/screens/SelectUnit/__test__/index.test.js +7 -7
- package/src/screens/Sharing/__test__/UpdateShareDevice.test.js +7 -7
- package/src/screens/SideMenuDetail/__test__/index.test.js +8 -8
- package/src/screens/SmartAccount/Connecting/index.js +5 -5
- package/src/screens/SmartAccount/ListDevice/__test__/ListDevice.test.js +8 -8
- package/src/screens/SmartAccount/SuccessfullyConnected/__test__/SuccessfullyConnected.test.js +7 -7
- package/src/screens/SmartAccount/__test__/Connecting.test.js +6 -6
- package/src/screens/SmartAccount/__test__/SmartAccount.test.js +10 -10
- package/src/screens/SubUnit/AddSubUnit.js +2 -4
- package/src/screens/SubUnit/__test__/AddSubUnit.test.js +9 -11
- package/src/screens/Template/EditTemplate.js +6 -4
- package/src/screens/Template/__test__/EditTemplate.test.js +7 -7
- package/src/screens/Template/__test__/detail.test.js +4 -4
- package/src/screens/Template/__test__/index.test.js +1 -1
- package/src/screens/Unit/Station/__test__/index.test.js +1 -1
- package/src/screens/Unit/__test__/SelectAddToFavorites.test.js +9 -9
- package/src/screens/Unit/__test__/SelectAddress.test.js +11 -17
- package/src/screens/Unit/__test__/Summaries.test.js +7 -7
- package/src/screens/Unit/components/__test__/AutomateScript.test.js +3 -3
- package/src/screens/Unit/components/__test__/SharedUnit.test.js +8 -8
- package/src/screens/Unit/hook/__test__/useUnitConnectRemoteDevices.test.js +2 -2
- package/src/utils/__test__/Utils.test.js +16 -16
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import React, { useContext } from 'react';
|
|
2
1
|
import { renderHook } from '@testing-library/react-hooks';
|
|
2
|
+
import React, { useContext } from 'react';
|
|
3
3
|
import { SCProvider } from '../../../context';
|
|
4
4
|
import { mockSCStore } from '../../../context/mockStore';
|
|
5
|
+
import { unwatchMultiConfigs, watchMultiConfigs } from '../../../iot/Monitor';
|
|
5
6
|
import { useWatchConfigs } from '../index';
|
|
6
|
-
import { watchMultiConfigs, unwatchMultiConfigs } from '../../../iot/Monitor';
|
|
7
7
|
|
|
8
8
|
const mockedSetAction = jest.fn();
|
|
9
9
|
|
|
@@ -27,6 +27,6 @@ describe('Test useWatchConfigs', () => {
|
|
|
27
27
|
wrapper,
|
|
28
28
|
});
|
|
29
29
|
jest.runOnlyPendingTimers();
|
|
30
|
-
expect(watchMultiConfigs).
|
|
30
|
+
expect(watchMultiConfigs).toHaveBeenCalledWith([1]);
|
|
31
31
|
});
|
|
32
32
|
});
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
+
import NetInfo from '@react-native-community/netinfo';
|
|
2
|
+
import { t } from 'i18n-js';
|
|
1
3
|
import { useCallback } from 'react';
|
|
2
4
|
import { useSCContextSelector } from '../../context';
|
|
3
|
-
import { sendCommandOverHomeAssistant } from '../../iot/RemoteControl/HomeAssistant';
|
|
4
|
-
import { sendCommandOverInternet } from '../../iot/RemoteControl/Internet';
|
|
5
5
|
import {
|
|
6
|
-
sendCommandOverBluetooth,
|
|
7
|
-
SEND_COMMAND_OVER_BLUETOOTH_FAIL,
|
|
8
6
|
BLUETOOOH_DEVICE_UNSTABLE,
|
|
7
|
+
SEND_COMMAND_OVER_BLUETOOTH_FAIL,
|
|
8
|
+
sendCommandOverBluetooth,
|
|
9
9
|
} from '../../iot/RemoteControl/Bluetooth';
|
|
10
|
+
import { sendCommandOverHomeAssistant } from '../../iot/RemoteControl/HomeAssistant';
|
|
11
|
+
import { sendCommandOverInternet } from '../../iot/RemoteControl/Internet';
|
|
10
12
|
import { ToastBottomHelper } from '../../utils/Utils';
|
|
11
|
-
import { t } from 'i18n-js';
|
|
12
|
-
import NetInfo from '@react-native-community/netinfo';
|
|
13
13
|
|
|
14
14
|
const handleReconnectionDeviceBle = async (device, action, data, userId) => {
|
|
15
15
|
for (let i = 0; i < 5; i++) {
|
package/src/hooks/useMqtt.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import mqtt from 'precompiled-mqtt/dist/mqtt.browser';
|
|
2
|
-
import {
|
|
2
|
+
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
3
3
|
|
|
4
4
|
import API from '../configs/API';
|
|
5
|
-
import { axiosGet } from '../utils/Apis/axios';
|
|
6
5
|
import { handleMqttMessage } from '../iot/mqtt';
|
|
6
|
+
import { axiosGet } from '../utils/Apis/axios';
|
|
7
7
|
|
|
8
8
|
const useChipJsonConfiguration = (dashboardId) => {
|
|
9
9
|
const [chips, setChips] = useState([]);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import t from '../../hooks/Common/useTranslations';
|
|
2
2
|
|
|
3
|
-
import { ToastBottomHelper } from '../../utils/Utils';
|
|
4
|
-
import { axiosPost } from '../../utils/Apis/axios';
|
|
5
3
|
import { API } from '../../configs';
|
|
4
|
+
import { axiosPost } from '../../utils/Apis/axios';
|
|
5
|
+
import { ToastBottomHelper } from '../../utils/Utils';
|
|
6
6
|
|
|
7
7
|
export const sendCommandOverInternet = async (sensor, action, data, source) => {
|
|
8
8
|
if (data !== null) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import Toast from 'react-native-toast-message';
|
|
2
1
|
import MockAdapter from 'axios-mock-adapter';
|
|
3
|
-
import
|
|
4
|
-
import api from '../../../utils/Apis/axios';
|
|
2
|
+
import Toast from 'react-native-toast-message';
|
|
5
3
|
import { API } from '../../../configs';
|
|
4
|
+
import api from '../../../utils/Apis/axios';
|
|
5
|
+
import { sendCommandOverInternet } from '../Internet';
|
|
6
6
|
|
|
7
7
|
const mock = new MockAdapter(api.axiosInstance);
|
|
8
8
|
|
|
@@ -14,24 +14,24 @@ describe('Test IOT Remote Control Internet', () => {
|
|
|
14
14
|
it('Trigger action via request POST', async () => {
|
|
15
15
|
mock.onPost(API.DEVICE.TRIGGER_ACTION()).reply(200);
|
|
16
16
|
await sendCommandOverInternet({}, {}, 'internet');
|
|
17
|
-
expect(Toast.show).
|
|
17
|
+
expect(Toast.show).toHaveBeenCalledTimes(2);
|
|
18
18
|
});
|
|
19
19
|
|
|
20
20
|
it('Trigger action via request POST with data isInteger', async () => {
|
|
21
21
|
mock.onPost(API.DEVICE.TRIGGER_ACTION()).reply(200);
|
|
22
22
|
await sendCommandOverInternet({}, {}, 1);
|
|
23
|
-
expect(Toast.show).
|
|
23
|
+
expect(Toast.show).toHaveBeenCalledTimes(2);
|
|
24
24
|
});
|
|
25
25
|
|
|
26
26
|
it('Trigger action via request POST with data is null', async () => {
|
|
27
27
|
mock.onPost(API.DEVICE.TRIGGER_ACTION()).reply(200);
|
|
28
28
|
await sendCommandOverInternet({}, {}, null);
|
|
29
|
-
expect(Toast.show).
|
|
29
|
+
expect(Toast.show).toHaveBeenCalledTimes(2);
|
|
30
30
|
});
|
|
31
31
|
|
|
32
32
|
it('Trigger action fail show error', async () => {
|
|
33
33
|
mock.onPost(API.DEVICE.TRIGGER_ACTION()).reply(400);
|
|
34
34
|
await sendCommandOverInternet({}, {}, 'internet');
|
|
35
|
-
expect(Toast.show).
|
|
35
|
+
expect(Toast.show).toHaveBeenCalled();
|
|
36
36
|
});
|
|
37
37
|
});
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import { Alert } from 'react-native';
|
|
3
|
-
import { act, create } from 'react-test-renderer';
|
|
4
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
5
|
-
import RNP from 'react-native-permissions';
|
|
6
4
|
import RNAndroidLocationEnabler from 'react-native-android-location-enabler';
|
|
5
|
+
import RNP from 'react-native-permissions';
|
|
6
|
+
import { act, create } from 'react-test-renderer';
|
|
7
7
|
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import AddLocationMaps from '../index';
|
|
8
|
+
import { useNavigation } from '@react-navigation/native';
|
|
9
|
+
import { RESULTS } from 'react-native-permissions';
|
|
11
10
|
import { API } from '../../../configs';
|
|
12
11
|
import { AccessibilityLabel } from '../../../configs/Constants';
|
|
12
|
+
import { SCProvider } from '../../../context';
|
|
13
|
+
import { mockSCStore } from '../../../context/mockStore';
|
|
13
14
|
import api from '../../../utils/Apis/axios';
|
|
14
15
|
import {
|
|
15
16
|
GEOLOCATION_ERROR,
|
|
16
17
|
OpenSetting,
|
|
17
18
|
} from '../../../utils/Permission/common';
|
|
18
|
-
import
|
|
19
|
-
import { useNavigation } from '@react-navigation/native';
|
|
19
|
+
import AddLocationMaps from '../index';
|
|
20
20
|
|
|
21
21
|
const wrapComponent = (route) => (
|
|
22
22
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -171,7 +171,7 @@ describe('Test SelectAddress', () => {
|
|
|
171
171
|
});
|
|
172
172
|
expect(
|
|
173
173
|
RNAndroidLocationEnabler.promptForEnableLocationIfNeeded
|
|
174
|
-
).
|
|
174
|
+
).toHaveBeenCalled();
|
|
175
175
|
|
|
176
176
|
RNAndroidLocationEnabler.promptForEnableLocationIfNeeded.mockClear();
|
|
177
177
|
|
|
@@ -184,7 +184,7 @@ describe('Test SelectAddress', () => {
|
|
|
184
184
|
});
|
|
185
185
|
expect(
|
|
186
186
|
RNAndroidLocationEnabler.promptForEnableLocationIfNeeded
|
|
187
|
-
).
|
|
187
|
+
).toHaveBeenCalled();
|
|
188
188
|
});
|
|
189
189
|
|
|
190
190
|
it('test get current location failed location not enabled ios', async () => {
|
|
@@ -233,7 +233,7 @@ describe('Test SelectAddress', () => {
|
|
|
233
233
|
await act(async () => {
|
|
234
234
|
await button.props.onPress();
|
|
235
235
|
});
|
|
236
|
-
expect(OpenSetting).
|
|
236
|
+
expect(OpenSetting).toHaveBeenCalledTimes(0);
|
|
237
237
|
OpenSetting.mockClear();
|
|
238
238
|
});
|
|
239
239
|
|
|
@@ -249,6 +249,6 @@ describe('Test SelectAddress', () => {
|
|
|
249
249
|
await act(async () => {
|
|
250
250
|
await button.props.onPress();
|
|
251
251
|
});
|
|
252
|
-
expect(navigate).
|
|
252
|
+
expect(navigate).toHaveBeenCalled();
|
|
253
253
|
});
|
|
254
254
|
});
|
|
@@ -1,37 +1,37 @@
|
|
|
1
|
+
import NetInfo from '@react-native-community/netinfo';
|
|
2
|
+
import { useIsFocused, useNavigation } from '@react-navigation/native';
|
|
3
|
+
import LottieView from 'lottie-react-native';
|
|
1
4
|
import React, {
|
|
2
5
|
useCallback,
|
|
3
|
-
useRef,
|
|
4
|
-
useState,
|
|
5
6
|
useEffect,
|
|
6
7
|
useMemo,
|
|
8
|
+
useRef,
|
|
9
|
+
useState,
|
|
7
10
|
} from 'react';
|
|
8
11
|
import {
|
|
9
12
|
Alert,
|
|
10
|
-
TouchableOpacity,
|
|
11
|
-
View,
|
|
12
13
|
FlatList,
|
|
13
14
|
Platform,
|
|
15
|
+
TouchableOpacity,
|
|
16
|
+
View,
|
|
14
17
|
} from 'react-native';
|
|
15
18
|
import dgram from 'react-native-udp';
|
|
16
|
-
import { useNavigation, useIsFocused } from '@react-navigation/native';
|
|
17
|
-
import LottieView from 'lottie-react-native';
|
|
18
19
|
import { v4 as uuidv4 } from 'uuid';
|
|
19
|
-
import NetInfo from '@react-native-community/netinfo';
|
|
20
20
|
|
|
21
|
-
import { ToastBottomHelper } from '../../utils/Utils';
|
|
22
|
-
import { useTranslations } from '../../hooks/Common/useTranslations';
|
|
23
|
-
import { HeaderCustom } from '../../commons/Header';
|
|
24
|
-
import Text from '../../commons/Text';
|
|
25
21
|
import WifiIcon from '../../../assets/images/wifi.svg';
|
|
26
22
|
import ButtonPopup from '../../commons/ButtonPopup';
|
|
27
|
-
import AccessibilityLabel from '../../configs/AccessibilityLabel';
|
|
28
|
-
import { Colors } from '../../configs';
|
|
29
23
|
import TextInputPassword from '../../commons/Form/TextInputPassword';
|
|
30
|
-
import styles from './ShareWifiPasswordStyles';
|
|
31
|
-
import Routes from '../../utils/Route';
|
|
32
24
|
import FullLoading from '../../commons/FullLoading';
|
|
25
|
+
import { HeaderCustom } from '../../commons/Header';
|
|
26
|
+
import Text from '../../commons/Text';
|
|
27
|
+
import { Colors } from '../../configs';
|
|
28
|
+
import AccessibilityLabel from '../../configs/AccessibilityLabel';
|
|
29
|
+
import { useTranslations } from '../../hooks/Common/useTranslations';
|
|
33
30
|
import LoadingCircle from '../../Images/Common/loading-circle.json';
|
|
31
|
+
import Routes from '../../utils/Route';
|
|
32
|
+
import { ToastBottomHelper } from '../../utils/Utils';
|
|
34
33
|
import { useWifiManage } from './hooks/useWifiManage';
|
|
34
|
+
import styles from './ShareWifiPasswordStyles';
|
|
35
35
|
|
|
36
36
|
let socket;
|
|
37
37
|
let wifiOrGatewaySSID;
|
|
@@ -112,6 +112,7 @@ const ShareWifiPassword = ({ route }) => {
|
|
|
112
112
|
'192.168.27.1',
|
|
113
113
|
undefined
|
|
114
114
|
);
|
|
115
|
+
|
|
115
116
|
if (i > 0) {
|
|
116
117
|
shareWifiToDevice(socket, i);
|
|
117
118
|
clearTimeout(timeoutSendConnect);
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import { act, create } from 'react-test-renderer';
|
|
3
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
4
4
|
|
|
5
|
-
import
|
|
5
|
+
import { useNavigation } from '@react-navigation/native';
|
|
6
|
+
import { TextInput } from 'react-native';
|
|
7
|
+
import { ViewButtonBottom } from '../../../commons';
|
|
6
8
|
import GroupCheckBox from '../../../commons/GroupCheckBox';
|
|
7
9
|
import { AccessibilityLabel } from '../../../configs/Constants';
|
|
8
|
-
import { ViewButtonBottom } from '../../../commons';
|
|
9
|
-
import { TextInput } from 'react-native';
|
|
10
|
-
import { getTranslate } from '../../../utils/I18n';
|
|
11
10
|
import { SCProvider } from '../../../context';
|
|
12
11
|
import { mockSCStore } from '../../../context/mockStore';
|
|
13
12
|
import api from '../../../utils/Apis/axios';
|
|
14
|
-
import {
|
|
13
|
+
import { getTranslate } from '../../../utils/I18n';
|
|
14
|
+
import AddNewGateway from '../index';
|
|
15
15
|
|
|
16
16
|
const wrapComponent = (route) => (
|
|
17
17
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -147,6 +147,6 @@ describe('Test AddNewGateway', () => {
|
|
|
147
147
|
await act(async () => {
|
|
148
148
|
viewButtonBottom.props.onRightClick();
|
|
149
149
|
});
|
|
150
|
-
expect(global.mockedNavigate).not.
|
|
150
|
+
expect(global.mockedNavigate).not.toHaveBeenCalled();
|
|
151
151
|
});
|
|
152
152
|
});
|
|
@@ -1,17 +1,17 @@
|
|
|
1
|
+
import NetInfo from '@react-native-community/netinfo';
|
|
2
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
1
3
|
import React from 'react';
|
|
2
4
|
import { Alert } from 'react-native';
|
|
3
5
|
import { act, create } from 'react-test-renderer';
|
|
4
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
5
|
-
import NetInfo from '@react-native-community/netinfo';
|
|
6
6
|
|
|
7
|
-
import
|
|
7
|
+
import { useNavigation } from '@react-navigation/native';
|
|
8
|
+
import Processing from '../../../commons/Processing';
|
|
9
|
+
import { API } from '../../../configs';
|
|
8
10
|
import { SCProvider } from '../../../context';
|
|
9
11
|
import { mockSCStore } from '../../../context/mockStore';
|
|
10
12
|
import api from '../../../utils/Apis/axios';
|
|
11
|
-
import Processing from '../../../commons/Processing';
|
|
12
13
|
import ConnectingDevice from '../ConnectingDevice';
|
|
13
|
-
import
|
|
14
|
-
import { useNavigation } from '@react-navigation/native';
|
|
14
|
+
import ConnectingWifiDevice from '../ConnectingWifiDevice';
|
|
15
15
|
|
|
16
16
|
const wrapComponent = (route) => (
|
|
17
17
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -59,7 +59,7 @@ describe('Test connecting wifi device', () => {
|
|
|
59
59
|
await act(async () => {
|
|
60
60
|
jest.runAllTimers();
|
|
61
61
|
});
|
|
62
|
-
expect(NetInfo.addEventListener).
|
|
62
|
+
expect(NetInfo.addEventListener).toHaveBeenCalled();
|
|
63
63
|
};
|
|
64
64
|
|
|
65
65
|
it('onReady call api scan chip', async () => {
|
|
@@ -81,6 +81,6 @@ describe('Test connecting wifi device', () => {
|
|
|
81
81
|
await act(async () => {
|
|
82
82
|
Alert.alert.mock.calls[1][2][0].onPress();
|
|
83
83
|
});
|
|
84
|
-
expect(goBack).
|
|
84
|
+
expect(goBack).toHaveBeenCalled();
|
|
85
85
|
});
|
|
86
86
|
});
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
1
2
|
import React from 'react';
|
|
3
|
+
import { Alert } from 'react-native';
|
|
2
4
|
import { act, create } from 'react-test-renderer';
|
|
3
|
-
import
|
|
4
|
-
import { getPusher } from '../../../utils/Pusher';
|
|
5
|
-
import Routes from '../../../utils/Route';
|
|
6
|
-
import ConnectingZigbeeDevice from '../ConnectingZigbeeDevice';
|
|
5
|
+
import Processing from '../../../commons/Processing';
|
|
7
6
|
import { SCProvider } from '../../../context';
|
|
8
7
|
import { mockSCStore } from '../../../context/mockStore';
|
|
9
8
|
import api from '../../../utils/Apis/axios';
|
|
10
|
-
import
|
|
11
|
-
import
|
|
9
|
+
import { getPusher } from '../../../utils/Pusher';
|
|
10
|
+
import Routes from '../../../utils/Route';
|
|
11
|
+
import ConnectingZigbeeDevice from '../ConnectingZigbeeDevice';
|
|
12
12
|
|
|
13
13
|
const wrapComponent = (route) => (
|
|
14
14
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -61,7 +61,7 @@ describe('Test connecting modbus device', () => {
|
|
|
61
61
|
await act(async () => {
|
|
62
62
|
jest.runOnlyPendingTimers();
|
|
63
63
|
});
|
|
64
|
-
expect(Alert.alert).
|
|
64
|
+
expect(Alert.alert).toHaveBeenCalled();
|
|
65
65
|
});
|
|
66
66
|
|
|
67
67
|
it('receive sensor-id from channel then rename sensor-id', async () => {
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import { TouchableOpacity } from 'react-native';
|
|
3
4
|
import { act, create } from 'react-test-renderer';
|
|
4
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
5
5
|
|
|
6
|
-
import
|
|
6
|
+
import { useNavigation } from '@react-navigation/native';
|
|
7
|
+
import _TextInput from '../../../commons/Form/TextInput';
|
|
8
|
+
import Text from '../../../commons/Text';
|
|
9
|
+
import AccessibilityLabel from '../../../configs/AccessibilityLabel';
|
|
10
|
+
import API from '../../../configs/API';
|
|
7
11
|
import { SCProvider } from '../../../context';
|
|
8
12
|
import { mockSCStore } from '../../../context/mockStore';
|
|
9
13
|
import api from '../../../utils/Apis/axios';
|
|
10
|
-
import AccessibilityLabel from '../../../configs/AccessibilityLabel';
|
|
11
|
-
import Text from '../../../commons/Text';
|
|
12
|
-
import _TextInput from '../../../commons/Form/TextInput';
|
|
13
|
-
import API from '../../../configs/API';
|
|
14
14
|
import { CheckBoxCustom } from '../../Sharing/Components';
|
|
15
|
-
import
|
|
15
|
+
import RenameNewDevices from '../RenameNewDevices';
|
|
16
16
|
|
|
17
17
|
const wrapComponent = (route) => (
|
|
18
18
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -61,7 +61,7 @@ describe('Test rename new devices', () => {
|
|
|
61
61
|
}
|
|
62
62
|
};
|
|
63
63
|
const mockedDispatchNavigate = () => {
|
|
64
|
-
expect(global.mockedDispatch).
|
|
64
|
+
expect(global.mockedDispatch).toHaveBeenCalledWith({
|
|
65
65
|
payload: {
|
|
66
66
|
index: 0,
|
|
67
67
|
routes: [
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import renderer, { act } from 'react-test-renderer';
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import { useNavigation } from '@react-navigation/native';
|
|
5
|
+
import { ViewButtonBottom } from '../../../commons';
|
|
5
6
|
import { SCProvider } from '../../../context';
|
|
6
7
|
import { mockSCStore } from '../../../context/mockStore';
|
|
7
|
-
import QRScan from '../../ScanChipQR/components/QRScan';
|
|
8
8
|
import { getTranslate } from '../../../utils/I18n';
|
|
9
9
|
import Routes from '../../../utils/Route';
|
|
10
|
-
import
|
|
11
|
-
import
|
|
10
|
+
import QRScan from '../../ScanChipQR/components/QRScan';
|
|
11
|
+
import ScanGatewayQR from '../ScanGatewayQR';
|
|
12
12
|
|
|
13
13
|
const wrapComponent = (route) => (
|
|
14
14
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -62,7 +62,7 @@ describe('test scan gateway device QR', () => {
|
|
|
62
62
|
await act(async () => {
|
|
63
63
|
await buttonBottom.props.onLeftClick();
|
|
64
64
|
});
|
|
65
|
-
expect(goBack).
|
|
65
|
+
expect(goBack).toHaveBeenCalled();
|
|
66
66
|
});
|
|
67
67
|
|
|
68
68
|
it('on scan correct QR code', async () => {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import renderer, { act } from 'react-test-renderer';
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import { useNavigation } from '@react-navigation/native';
|
|
5
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
5
6
|
import AccessibilityLabel from '../../../configs/AccessibilityLabel';
|
|
6
7
|
import { SCProvider } from '../../../context';
|
|
7
8
|
import { mockSCStore } from '../../../context/mockStore';
|
|
8
|
-
import { useNavigation } from '@react-navigation/native';
|
|
9
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
10
9
|
import api from '../../../utils/Apis/axios';
|
|
10
|
+
import SelectDeviceUnit from '../SelectDeviceUnit';
|
|
11
11
|
|
|
12
12
|
new MockAdapter(api.axiosInstance);
|
|
13
13
|
|
|
@@ -41,6 +41,6 @@ describe('test single SelectUnit', () => {
|
|
|
41
41
|
await act(async () => {
|
|
42
42
|
goBack.props.onPress();
|
|
43
43
|
});
|
|
44
|
-
expect(global.mockedNavigate).
|
|
44
|
+
expect(global.mockedNavigate).toHaveBeenCalled();
|
|
45
45
|
});
|
|
46
46
|
});
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { act, create } from 'react-test-renderer';
|
|
3
3
|
|
|
4
|
-
import SelectModbusGateway from '../SelectModbusGateway';
|
|
5
|
-
import { SCProvider } from '../../../context';
|
|
6
|
-
import { mockSCStore } from '../../../context/mockStore';
|
|
7
|
-
import SelectGateway from '../../../commons/SelectGateway';
|
|
8
|
-
import Routes from '../../../utils/Route';
|
|
9
4
|
import { useNavigation } from '@react-navigation/native';
|
|
10
5
|
import MockAdapter from 'axios-mock-adapter';
|
|
6
|
+
import SelectGateway from '../../../commons/SelectGateway';
|
|
7
|
+
import { SCProvider } from '../../../context';
|
|
8
|
+
import { mockSCStore } from '../../../context/mockStore';
|
|
11
9
|
import api from '../../../utils/Apis/axios';
|
|
10
|
+
import Routes from '../../../utils/Route';
|
|
11
|
+
import SelectModbusGateway from '../SelectModbusGateway';
|
|
12
12
|
|
|
13
13
|
new MockAdapter(api.axiosInstance);
|
|
14
14
|
|
|
@@ -60,7 +60,7 @@ describe('Test select modbus gateway', () => {
|
|
|
60
60
|
selectGateway.props.onPressNext({ id: 3 });
|
|
61
61
|
});
|
|
62
62
|
|
|
63
|
-
expect(global.mockedNavigate).
|
|
63
|
+
expect(global.mockedNavigate).toHaveBeenCalledWith(
|
|
64
64
|
Routes.ConnectingModbusDevice,
|
|
65
65
|
{
|
|
66
66
|
unit: {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { act, create } from 'react-test-renderer';
|
|
3
3
|
|
|
4
|
-
import
|
|
4
|
+
import { useNavigation } from '@react-navigation/native';
|
|
5
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
6
|
+
import SelectGateway from '../../../commons/SelectGateway';
|
|
5
7
|
import { SCProvider } from '../../../context';
|
|
6
8
|
import { mockSCStore } from '../../../context/mockStore';
|
|
7
|
-
import SelectGateway from '../../../commons/SelectGateway';
|
|
8
|
-
import Routes from '../../../utils/Route';
|
|
9
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
10
9
|
import api from '../../../utils/Apis/axios';
|
|
11
|
-
import
|
|
10
|
+
import Routes from '../../../utils/Route';
|
|
11
|
+
import SelectZigbeeGateway from '../SelectZigbeeGateway';
|
|
12
12
|
|
|
13
13
|
new MockAdapter(api.axiosInstance);
|
|
14
14
|
|
|
@@ -60,7 +60,7 @@ describe('Test select zigbee gateway', () => {
|
|
|
60
60
|
selectGateway.props.onPressNext({ id: 3 });
|
|
61
61
|
});
|
|
62
62
|
|
|
63
|
-
expect(global.mockedNavigate).
|
|
63
|
+
expect(global.mockedNavigate).toHaveBeenCalledWith(
|
|
64
64
|
Routes.ZigbeeDeviceConnectGuide,
|
|
65
65
|
{
|
|
66
66
|
unit: {
|
|
@@ -40,15 +40,11 @@ describe('test share wifi password', () => {
|
|
|
40
40
|
});
|
|
41
41
|
|
|
42
42
|
it('render share wifi', async () => {
|
|
43
|
-
jest.useFakeTimers();
|
|
44
43
|
const route = { params: {} };
|
|
45
44
|
await act(async () => {
|
|
46
45
|
tree = await renderer.create(wrapComponent(route));
|
|
47
46
|
});
|
|
48
47
|
await flushPromises();
|
|
49
|
-
await act(async () => {
|
|
50
|
-
jest.runOnlyPendingTimers();
|
|
51
|
-
});
|
|
52
48
|
|
|
53
49
|
const instance = tree.root;
|
|
54
50
|
const popups = instance.findAllByType(ButtonPopup);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { act, renderHook } from '@testing-library/react-hooks';
|
|
2
2
|
|
|
3
|
-
import { useWifiManage } from '../useWifiManage';
|
|
4
3
|
import WifiManager from 'react-native-wifi-reborn';
|
|
4
|
+
import { useWifiManage } from '../useWifiManage';
|
|
5
5
|
|
|
6
6
|
describe('Test useWifiManage', () => {
|
|
7
7
|
it('test getCurrentWifiSSID', async () => {
|
|
@@ -18,6 +18,6 @@ describe('Test useWifiManage', () => {
|
|
|
18
18
|
await act(async () => {
|
|
19
19
|
await result.current.disconnectWifi(123);
|
|
20
20
|
});
|
|
21
|
-
expect(WifiManager.disconnectFromSSID).
|
|
21
|
+
expect(WifiManager.disconnectFromSSID).toHaveBeenCalledWith(123);
|
|
22
22
|
});
|
|
23
23
|
});
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { create, act } from 'react-test-renderer';
|
|
3
1
|
import { useRoute } from '@react-navigation/native';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { act, create } from 'react-test-renderer';
|
|
4
4
|
|
|
5
|
+
import DetailConfigActionModbus from '..';
|
|
5
6
|
import { SCProvider } from '../../../../context';
|
|
6
7
|
import { mockSCStore } from '../../../../context/mockStore';
|
|
7
|
-
import DetailConfigAction from '../../components/DetailConfigAction';
|
|
8
|
-
import DetailActionModbus from '../../components/DetailActionModbus';
|
|
9
8
|
import Routes from '../../../../utils/Route';
|
|
10
|
-
import
|
|
9
|
+
import DetailActionModbus from '../../components/DetailActionModbus';
|
|
10
|
+
import DetailConfigAction from '../../components/DetailConfigAction';
|
|
11
11
|
|
|
12
12
|
const wrapComponent = () => (
|
|
13
13
|
<SCProvider initState={mockSCStore({})}>
|
|
@@ -93,7 +93,7 @@ describe('Test DetailConfigActionZigbee', () => {
|
|
|
93
93
|
})();
|
|
94
94
|
});
|
|
95
95
|
expect(detailActionModbus).toHaveLength(1);
|
|
96
|
-
expect(global.mockedNavigate).
|
|
96
|
+
expect(global.mockedNavigate).toHaveBeenCalledWith(
|
|
97
97
|
Routes.DetailChildConfigActionModbus,
|
|
98
98
|
{
|
|
99
99
|
isChildAction: true,
|
|
@@ -1,23 +1,25 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { create, act } from 'react-test-renderer';
|
|
3
|
-
import MockAdapter from 'axios-mock-adapter';
|
|
4
|
-
import { useRoute } from '@react-navigation/native';
|
|
5
1
|
import SegmentedControl from '@react-native-segmented-control/segmented-control';
|
|
2
|
+
import { useRoute } from '@react-navigation/native';
|
|
3
|
+
import MockAdapter from 'axios-mock-adapter';
|
|
4
|
+
import React from 'react';
|
|
6
5
|
import Toast from 'react-native-toast-message';
|
|
6
|
+
import { act, create } from 'react-test-renderer';
|
|
7
7
|
|
|
8
|
-
import { SCProvider } from '../../../../context';
|
|
9
|
-
import { mockSCStore } from '../../../../context/mockStore';
|
|
10
8
|
import DeviceInternalDetail from '..';
|
|
11
9
|
import { HeaderCustom } from '../../../../commons';
|
|
12
|
-
import { AccessibilityLabel } from '../../../../configs/Constants';
|
|
13
|
-
import Routes from '../../../../utils/Route';
|
|
14
|
-
import TabPaneCT from '../../components/TabPaneCT';
|
|
15
10
|
import MenuActionMore from '../../../../commons/MenuActionMore';
|
|
16
|
-
import
|
|
11
|
+
import ModalPopupCT from '../../../../commons/ModalPopupCT';
|
|
17
12
|
import { API } from '../../../../configs';
|
|
18
|
-
import {
|
|
13
|
+
import {
|
|
14
|
+
AccessibilityLabel,
|
|
15
|
+
PERMISSION_TYPE,
|
|
16
|
+
} from '../../../../configs/Constants';
|
|
17
|
+
import { SCProvider } from '../../../../context';
|
|
18
|
+
import { mockSCStore } from '../../../../context/mockStore';
|
|
19
|
+
import api from '../../../../utils/Apis/axios';
|
|
20
|
+
import Routes from '../../../../utils/Route';
|
|
19
21
|
import Detail from '../../components/Detail';
|
|
20
|
-
import
|
|
22
|
+
import TabPaneCT from '../../components/TabPaneCT';
|
|
21
23
|
import { fetchGatewayCT, flushPromises } from '../../test-utils';
|
|
22
24
|
|
|
23
25
|
const mock = new MockAdapter(api.axiosInstance);
|
|
@@ -167,8 +169,8 @@ describe('Test DeviceInternalDetail', () => {
|
|
|
167
169
|
await act(async () => {
|
|
168
170
|
await modal.props.onPressConfirm();
|
|
169
171
|
});
|
|
170
|
-
expect(global.mockedPop).
|
|
171
|
-
expect(Toast.show).
|
|
172
|
+
expect(global.mockedPop).toHaveBeenCalledWith(1);
|
|
173
|
+
expect(Toast.show).toHaveBeenCalledWith({
|
|
172
174
|
position: 'bottom',
|
|
173
175
|
text1: 'Delete successfully!',
|
|
174
176
|
text2: undefined,
|
|
@@ -253,7 +255,7 @@ describe('Test DeviceInternalDetail', () => {
|
|
|
253
255
|
await act(async () => {
|
|
254
256
|
await detail.props.onPressRow(1);
|
|
255
257
|
});
|
|
256
|
-
expect(global.mockedNavigate).
|
|
258
|
+
expect(global.mockedNavigate).toHaveBeenCalledWith(
|
|
257
259
|
Routes.DetailConfigActionInternal,
|
|
258
260
|
{
|
|
259
261
|
device: {
|
|
@@ -307,7 +309,7 @@ describe('Test DeviceInternalDetail', () => {
|
|
|
307
309
|
await act(async () => {
|
|
308
310
|
await detail.props.onPressRow(1);
|
|
309
311
|
});
|
|
310
|
-
expect(global.mockedNavigate).
|
|
312
|
+
expect(global.mockedNavigate).toHaveBeenCalledWith(
|
|
311
313
|
Routes.DetailConfigActionInternal,
|
|
312
314
|
{
|
|
313
315
|
device: {
|
|
@@ -332,7 +334,7 @@ describe('Test DeviceInternalDetail', () => {
|
|
|
332
334
|
await act(async () => {
|
|
333
335
|
await detail.props.onPressRow(1);
|
|
334
336
|
});
|
|
335
|
-
expect(global.mockedNavigate).
|
|
337
|
+
expect(global.mockedNavigate).toHaveBeenCalledWith(
|
|
336
338
|
Routes.DetailConfigActionInternal,
|
|
337
339
|
{
|
|
338
340
|
device: {
|