feat(test-redux-actions): create tests for redux actions (#62)

This commit is contained in:
Eliabe Júnior 2019-01-31 13:43:37 -03:00 committed by GitHub
parent d0d7f2c4f8
commit 89ce3e4292
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 224 additions and 0 deletions

View File

@ -0,0 +1,49 @@
// @flow
import configureStore from 'redux-mock-store';
import {
LOAD_ADDRESSES_SUCCESS,
LOAD_ADDRESSES_ERROR,
loadAddressesSuccess,
loadAddressesError,
} from '../../app/redux/modules/receive';
const store = configureStore()();
describe('Receive Actions', () => {
beforeEach(() => store.clearActions());
test('should create an action to load addresses with success', () => {
const payload = {
addresses: [
'tm0a9si0ds09gj02jj',
'smas098gk02jf0kskk'
],
};
store.dispatch(loadAddressesSuccess(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: LOAD_ADDRESSES_SUCCESS,
payload,
}),
);
});
test('should create an action to load addresses with error', () => {
const payload = {
error: 'Something went wrong!',
};
store.dispatch(loadAddressesError(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: LOAD_ADDRESSES_ERROR,
payload,
}),
);
});
});

View File

@ -0,0 +1,116 @@
// @flow
import configureStore from 'redux-mock-store';
import {
SEND_TRANSACTION,
SEND_TRANSACTION_SUCCESS,
SEND_TRANSACTION_ERROR,
RESET_SEND_TRANSACTION,
VALIDATE_ADDRESS_SUCCESS,
VALIDATE_ADDRESS_ERROR,
LOAD_ZEC_PRICE,
sendTransaction,
sendTransactionSuccess,
sendTransactionError,
resetSendTransaction,
validateAddressSuccess,
validateAddressError,
loadZECPrice,
} from '../../app/redux/modules/send';
const store = configureStore()();
describe('Send Actions', () => {
beforeEach(() => store.clearActions());
test('should create an action to send a transaction', () => {
store.dispatch(sendTransaction());
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: SEND_TRANSACTION,
}),
);
});
test('should create an action to send transaction with success', () => {
const payload = {
operationId: '0b9ii4590ab-1d012klfo'
};
store.dispatch(sendTransactionSuccess(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: SEND_TRANSACTION_SUCCESS,
payload,
}),
);
});
test('should create an action to send transaction with error', () => {
const payload = {
error: 'Something went wrong!',
};
store.dispatch(sendTransactionError(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: SEND_TRANSACTION_ERROR,
payload,
}),
);
});
test('should reset a transaction', () => {
store.dispatch(resetSendTransaction());
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: RESET_SEND_TRANSACTION,
}),
);
});
test('should validate a address with success', () => {
const payload = {
isValid: true
};
store.dispatch(validateAddressSuccess(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: VALIDATE_ADDRESS_SUCCESS,
payload,
}),
);
});
test('should validate a address with error', () => {
store.dispatch(validateAddressError());
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: VALIDATE_ADDRESS_ERROR,
}),
);
});
test('should load ZEC price', () => {
const payload = {
value: 1.35
};
store.dispatch(loadZECPrice(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: LOAD_ZEC_PRICE,
payload
}),
);
});
});

View File

@ -0,0 +1,59 @@
// @flow
import configureStore from 'redux-mock-store';
import {
LOAD_TRANSACTIONS,
LOAD_TRANSACTIONS_SUCCESS,
LOAD_TRANSACTIONS_ERROR,
loadTransactions,
loadTransactionsSuccess,
loadTransactionsError,
} from '../../app/redux/modules/transactions';
const store = configureStore()();
describe('Transactions Actions', () => {
beforeEach(() => store.clearActions());
test('should create an action to load transactions', () => {
store.dispatch(loadTransactions());
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: LOAD_TRANSACTIONS,
}),
);
});
test('should create an action to load transactions with success', () => {
const payload = {
list: [],
zecPrice: 0,
};
store.dispatch(loadTransactionsSuccess(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: LOAD_TRANSACTIONS_SUCCESS,
payload,
}),
);
});
test('should create an action to load transactions with error', () => {
const payload = {
error: 'Something went wrong!',
};
store.dispatch(loadTransactionsError(payload));
expect(store.getActions()[0]).toEqual(
expect.objectContaining({
type: LOAD_TRANSACTIONS_ERROR,
payload,
}),
);
});
});