UUID Flip flop typo

pull/1048/head
Rick Carlino 2018-11-25 12:45:22 -06:00
parent a84b84e528
commit ec8392b25b
4 changed files with 22 additions and 20 deletions

View File

@ -20,16 +20,19 @@ describe("<PinBindings/>", () => {
const fakeSequence1 = fakeSequence();
fakeSequence1.body.id = 1;
fakeSequence1.body.name = "Sequence 1";
const fakeSequence2 = fakeSequence();
fakeSequence2.body.id = 2;
fakeSequence2.body.name = "Sequence 2";
const fakePinBinding1 = fakePinBinding();
fakePinBinding1.body.id = 1;
fakePinBinding1.body.pin_num = 0;
fakePinBinding1.body =
({ pin_num: 10, sequence_id: 2, binding_type: PinBindingType.standard });
const fakePinBinding2 = fakePinBinding();
fakePinBinding2.body.id = 2;
fakePinBinding2.body.pin_num = 26;
fakePinBinding2.body.binding_type = PinBindingType.special;
(fakePinBinding2.body as SpecialPinBinding).special_action =
PinBindingSpecialAction.emergency_lock;
const resources = buildResourceIndex([

View File

@ -34,8 +34,8 @@ describe("commitBulkEditor()", () => {
"kind": "sequence"
};
const seq = arrayUnwrap(newTaggedResource("Sequence", seqBody));
const regimenUuid = seq.uuid;
const sequenceUuid = reg.uuid;
const regimenUuid = reg.uuid;
const sequenceUuid = seq.uuid;
const fakeResources: TaggedResource[] = [reg, seq];
state.resources.index = buildResourceIndex(fakeResources).index;
@ -95,7 +95,7 @@ describe("commitBulkEditor()", () => {
returnsError(state, "No day(s) selected.");
});
it("adds items", () => {
fit("adds items", () => {
const state = newFakeState();
const getState = () => state;
const dispatch = jest.fn();

View File

@ -67,24 +67,25 @@ export function setSequence(uuid: string | ""): ReduxAction<string> {
export function commitBulkEditor(): Thunk {
return function (dispatch, getState) {
const res = getState().resources;
const resources = getState().resources;
const { weeks, dailyOffsetMs, selectedSequenceUUID, currentRegimen } =
res.consumers.regimens;
resources.consumers.regimens;
// If the user hasn't clicked a regimen, initialize one for them.
if (currentRegimen) {
// Proceed only if they selected a sequence from the drop down.
if (selectedSequenceUUID) {
const seq = findSequence(res.index, selectedSequenceUUID).body;
const regimenItems = weeks.length > 0
? groupRegimenItemsByWeek(weeks, dailyOffsetMs, seq)
: undefined;
const sequence =
findSequence(resources.index, selectedSequenceUUID).body;
const groupedItems = weeks.length > 0 ?
groupRegimenItemsByWeek(weeks, dailyOffsetMs, sequence) : undefined;
// Proceed only if days are selcted in the scheduler.
if (regimenItems && regimenItems.length > 0) {
const reg = findRegimen(res.index, currentRegimen);
const update = defensiveClone(reg).body;
update.regimen_items = update.regimen_items.concat(regimenItems);
dispatch(overwrite(reg, update));
debugger;
if (groupedItems && groupedItems.length > 0) {
const regimen = findRegimen(resources.index, currentRegimen);
const clonedRegimen = defensiveClone(regimen).body;
clonedRegimen.regimen_items = clonedRegimen.regimen_items.concat(groupedItems);
dispatch(overwrite(regimen, clonedRegimen));
} else {
return error(t("No day(s) selected."));
}

View File

@ -32,10 +32,8 @@ export function hasId(ri: ResourceIndex, k: ResourceName, id: number): boolean {
export function assertUuid(expected: ResourceName, actual: string | undefined) {
if (actual && !actual.startsWith(expected)) {
console.warn(`
BAD NEWS!!! You thought this was a ${expected} UUID, but here's what it
actually was:
${actual}
`);
UUID integrity warning! Application expected ${expected} type, but instead
received "${actual}"`);
return false;
} else {
return true;