Select Git revision
patternSlice.test.js
Forked from
SOFT Core / SOFT 260 / React Redux Starter Code
Source project has a limited visibility.
patternSlice.test.js 3.54 KiB
import patternSlice, {
selectColorOne,
selectColorTwo,
selectColorThree,
selectColorFour,
showColorOne,
showColorTwo,
showColorThree,
showColorFour,
hideColorOne,
hideColorTwo,
hideColorThree,
hideColorFour,
} from './patternslice.js';
describe('the initial state', () => {
test('has no text', () => {
const state = patternSlice.reducer(undefined, {});
expect(state).toEqual({
colorOne: '',
colorTwo: '',
colorThree: '',
colorFour: '',
});
});
});
describe('selectColorOne', () => {
test('reads the stored value', () => {
const state = {
colorOne: 'red',
colorTwo: '',
colorThree: '',
colorFour: '',
};
const result = selectColorOne({ [patternSlice.name]: state });
expect(result).toBe('red');
});
});
describe('showColorOne', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorOne: '',
}, showColorOne());
expect(state).toEqual({
colorOne: 'red',
});
});
});
describe('hideColorOne', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorOne: 'red',
}, hideColorOne());
expect(state).toEqual({
colorOne: '',
});
});
});
describe('selectColorTwo', () => {
test('reads the stored value', () => {
const state = {
colorOne: '',
colorTwo: 'blue',
colorThree: '',
colorFour: '',
};
const result = selectColorTwo({ [patternSlice.name]: state });
expect(result).toBe('blue');
});
});
describe('showColorTwo', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorTwo: '',
}, showColorTwo());
expect(state).toEqual({
colorTwo: 'blue',
});
});
});
describe('hideColorTwo', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorTwo: 'blue',
}, hideColorTwo());
expect(state).toEqual({
colorTwo: '',
});
});
});
describe('selectColorThree', () => {
test('reads the stored value', () => {
const state = {
colorOne: '',
colorTwo: '',
colorThree: 'yellow',
colorFour: '',
};
const result = selectColorThree({ [patternSlice.name]: state });
expect(result).toBe('yellow');
});
});
describe('showColorThree', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorThree: '',
}, showColorThree());
expect(state).toEqual({
colorThree: 'yellow',
});
});
});
describe('hideColorThree', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorThree: 'yellow',
}, hideColorThree());
expect(state).toEqual({
colorThree: '',
});
});
});
describe('selectColorFour', () => {
test('reads the stored value', () => {
const state = {
colorOne: '',
colorTwo: '',
colorThree: '',
colorFour: 'green',
};
const result = selectColorFour({ [patternSlice.name]: state });
expect(result).toBe('green');
});
});
describe('showColorFour', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorFour: '',
}, showColorFour());
expect(state).toEqual({
colorFour: 'green',
});
});
});
describe('hideColorFour', () => {
test('overwrites the stored value', () => {
const state = patternSlice.reducer({
colorFour: 'green',
}, hideColorFour());
expect(state).toEqual({
colorFour: '',
});
});
});