Yay passing tests. NEXT: Pending tests

pull/1048/head
Rick Carlino 2018-11-17 14:36:16 -06:00
parent f676075ceb
commit c680d8cf4e
3 changed files with 34 additions and 18 deletions

View File

@ -33,12 +33,3 @@ export const resourceUsageList =
.reduce<string[]>((acc, item) => acc.concat(item), [])
.reduce((acc, item) => ({ ...acc, [item]: true }), start);
};
/** Pull this variable out when its time
* to write unit tests for in_use tracker */
export const YOU_MUST_FIX_THIS: UsageIndex = {
"FarmEvent.Regimen": {},
"FarmEvent.Sequence": {},
"Regimen.Sequence": {},
"Sequence.Sequence": {},
};

View File

@ -20,7 +20,6 @@ import { initialState as designerState } from "../farm_designer/reducer";
import { farmwareState } from "../farmware/reducer";
import { initialState as regimenState } from "../regimens/reducer";
import { initialState as sequenceState } from "../sequences/reducer";
import { YOU_MUST_FIX_THIS } from "./in_use";
export const emptyState = (): RestResources => {
return {
@ -63,7 +62,12 @@ export const emptyState = (): RestResources => {
byKindAndId: {},
references: {},
sequenceMeta: {},
inUse: YOU_MUST_FIX_THIS
inUse: {
"FarmEvent.Regimen": {},
"FarmEvent.Sequence": {},
"Regimen.Sequence": {},
"Sequence.Sequence": {},
}
}
};
};

View File

@ -20,19 +20,28 @@ import { Actions } from "../../constants";
import { init } from "../../api/crud";
import { push } from "../../history";
import { selectSequence } from "../actions";
import { YOU_MUST_FIX_THIS, resourceUsageList } from "../../resources/in_use";
import { resourceUsageList } from "../../resources/in_use";
import { buildResourceIndex } from "../../__test_support__/resource_index_builder";
import { resourceReducer } from "../../resources/reducer";
import { resourceReady } from "../../sync/actions";
describe("<SequencesList />", () => {
const fakeProps = (): SequencesListProps => {
const fakeSequences = () => {
const fakeSequence1 = fakeSequence();
fakeSequence1.body.name = "Sequence 1";
const fakeSequence2 = fakeSequence();
fakeSequence2.body.name = "Sequence 2";
return [fakeSequence1, fakeSequence2];
};
const fakeProps = (sequences = fakeSequences()): SequencesListProps => {
const { inUse } = resourceReducer(buildResourceIndex(sequences),
resourceReady("Sequence", sequences)).index;
return {
resourceUsage: resourceUsageList(YOU_MUST_FIX_THIS),
resourceUsage: resourceUsageList(inUse),
dispatch: jest.fn(),
sequence: undefined,
sequences: [fakeSequence1, fakeSequence2]
sequences
};
};
@ -62,14 +71,26 @@ describe("<SequencesList />", () => {
});
});
it("shows in-use indicator", () => {
const p = fakeProps();
fit("shows in-use indicator", () => {
const fakeSequence1 = fakeSequence();
fakeSequence1.body.name = "Sequence 1";
fakeSequence1.body.id = 1;
const fakeSequence2 = fakeSequence();
fakeSequence2.body.name = "Sequence 2";
fakeSequence2.body.id = 2;
fakeSequence2.body.body =
[{ kind: "execute", args: { sequence_id: fakeSequence1.body.id } }];
const p = fakeProps([fakeSequence1, fakeSequence2]);
const wrapper = mount(<SequencesList {...p} />);
expect(wrapper.find(".in-use").length).toEqual(1);
});
it("doesn't show in-use indicator", () => {
const wrapper = mount(<SequencesList {...fakeProps()} />);
const p = fakeProps();
const wrapper = mount(<SequencesList {...p} />);
expect(wrapper.find(".in-use").length).toEqual(0);
});