mirror of
https://github.com/status-im/MyCrypto.git
synced 2025-02-20 14:58:24 +00:00
* Make UnlockHeader a PureComponent * MVP * actually disable wallet format if not determined to be valid format for wallet * default to correct derivation in mnemonic modal * cleanup * fix tslint * use enums for HD wallet getPath * Add stricter typing * Fix labels not updating on selector * Ban hardware wallet support for custom network unsupported chainIds * Fix type error * Fix custom node dPath not being saved * Fix mnemonic modal * default path bugfixes * add react-select * misc fixes; rabbit holing hard. * fix tslint * revert identicon changes * reload on network change :/ * actually reload on network change * really really reload on network change * tslint fixes * Update styles * set table width * fix package versioning * push broken sagas * Fix saga test * fix tslint * address round of review * move non-selectors out to utilty; adjust reload timer * cleanup network util comments * manage wallet disable at WalletDecrypt instead of in both WalletDecrypt and WalletButton * Separate WalletDecrypt props into ownProps / StateProps * disable payment requests on non-eth networks * specialize connect; separate props * remove unused state prop * remove bad import * create tests for networks * Clarify Lite-Send error on non-ethereum networkS * remove string option for network config name * Create concept of always-on 'EXTRA_PATHS'; include SINGULAR_DTV legacy dPath in 'EXTRA_PATHS' * fix multiple imports * address PR comments
92 lines
2.6 KiB
TypeScript
92 lines
2.6 KiB
TypeScript
import { config, INITIAL_STATE } from 'reducers/config';
|
|
import * as configActions from 'actions/config';
|
|
import { NODES, NETWORKS } from 'config';
|
|
import { makeCustomNodeId, makeNodeConfigFromCustomConfig } from 'utils/node';
|
|
|
|
const custNode = {
|
|
name: 'Test Config',
|
|
url: 'http://somecustomconfig.org/',
|
|
port: 443,
|
|
network: 'ETH'
|
|
};
|
|
|
|
describe('config reducer', () => {
|
|
it('should handle CONFIG_LANGUAGE_CHANGE', () => {
|
|
const language = 'en';
|
|
expect(config(undefined, configActions.changeLanguage(language))).toEqual({
|
|
...INITIAL_STATE,
|
|
languageSelection: language
|
|
});
|
|
});
|
|
|
|
it('should handle CONFIG_NODE_CHANGE', () => {
|
|
const key = Object.keys(NODES)[0];
|
|
const node = NODES[key];
|
|
const network = NETWORKS[node.network];
|
|
|
|
expect(config(undefined, configActions.changeNode(key, node, network))).toEqual({
|
|
...INITIAL_STATE,
|
|
node: NODES[key],
|
|
nodeSelection: key
|
|
});
|
|
});
|
|
|
|
it('should handle CONFIG_TOGGLE_OFFLINE', () => {
|
|
const offlineState = {
|
|
...INITIAL_STATE,
|
|
offline: true
|
|
};
|
|
|
|
const onlineState = {
|
|
...INITIAL_STATE,
|
|
offline: false
|
|
};
|
|
|
|
expect(config(offlineState, configActions.toggleOfflineConfig())).toEqual({
|
|
...offlineState,
|
|
offline: false
|
|
});
|
|
|
|
expect(config(onlineState, configActions.toggleOfflineConfig())).toEqual({
|
|
...onlineState,
|
|
offline: true
|
|
});
|
|
});
|
|
|
|
it('should handle CONFIG_ADD_CUSTOM_NODE', () => {
|
|
expect(config(undefined, configActions.addCustomNode(custNode))).toEqual({
|
|
...INITIAL_STATE,
|
|
customNodes: [custNode]
|
|
});
|
|
});
|
|
|
|
describe('should handle CONFIG_REMOVE_CUSTOM_NODE', () => {
|
|
const customNodeId = makeCustomNodeId(custNode);
|
|
const addedState = config(undefined, configActions.addCustomNode(custNode));
|
|
const addedAndActiveState = config(
|
|
addedState,
|
|
configActions.changeNode(
|
|
customNodeId,
|
|
makeNodeConfigFromCustomConfig(custNode),
|
|
NETWORKS[custNode.network]
|
|
)
|
|
);
|
|
const removedState = config(addedAndActiveState, configActions.removeCustomNode(custNode));
|
|
|
|
it('should remove the custom node from `customNodes`', () => {
|
|
expect(removedState.customNodes.length).toBe(0);
|
|
});
|
|
|
|
it('should change the active node, if the custom one was active', () => {
|
|
expect(removedState.nodeSelection === customNodeId).toBeFalsy();
|
|
});
|
|
});
|
|
|
|
it('should handle CONFIG_SET_LATEST_BLOCK', () => {
|
|
expect(config(undefined, configActions.setLatestBlock('12345'))).toEqual({
|
|
...INITIAL_STATE,
|
|
latestBlock: '12345'
|
|
});
|
|
});
|
|
});
|