Remove legacy shims (v6 support ended 4 months ago)
parent
f52248537e
commit
7843a1e93c
|
@ -23,8 +23,6 @@ class Log < ApplicationRecord
|
|||
|
||||
validates :device, presence: true
|
||||
validates :type, presence: true
|
||||
serialize :meta
|
||||
validates :meta, presence: true
|
||||
# http://stackoverflow.com/a/5127684/1064917
|
||||
before_validation :set_defaults
|
||||
|
||||
|
@ -32,27 +30,6 @@ class Log < ApplicationRecord
|
|||
self.channels ||= []
|
||||
end
|
||||
|
||||
# Legacy shims ===============================================================
|
||||
# TODO: Remove these once FBOS stops using the `meta` field (FBOS < v6.4.0).
|
||||
def meta
|
||||
{
|
||||
type: self.type,
|
||||
major_version: self.major_version,
|
||||
minor_version: self.minor_version,
|
||||
verbosity: self.verbosity,
|
||||
x: self.x,
|
||||
y: self.y,
|
||||
z: self.z,
|
||||
}
|
||||
end
|
||||
|
||||
def meta=(hash)
|
||||
hash.map { |(key, value)| self.send("#{key}=", value) }
|
||||
self.meta
|
||||
end
|
||||
|
||||
# End Legacy shims ===========================================================
|
||||
|
||||
def broadcast? # Logs get their own special channel. Don't echo twice!
|
||||
false
|
||||
end
|
||||
|
|
|
@ -7,10 +7,11 @@ module Devices
|
|||
end
|
||||
|
||||
optional do
|
||||
string :name
|
||||
string :timezone#, in: Device::TIMEZONES
|
||||
time :last_saw_mq
|
||||
string :name
|
||||
string :timezone
|
||||
time :last_saw_mq
|
||||
integer :mounted_tool_id, nils: true
|
||||
integer :turnkey_sequence_id, nils: true
|
||||
end
|
||||
|
||||
def validate
|
||||
|
@ -23,7 +24,7 @@ module Devices
|
|||
device
|
||||
end
|
||||
|
||||
private
|
||||
private
|
||||
|
||||
def bad_tool_id
|
||||
add_error :mounted_tool_id, :mounted_tool_id, BAD_TOOL_ID % better_tool_id
|
||||
|
@ -38,7 +39,7 @@ module Devices
|
|||
end
|
||||
|
||||
def mounted_tool_data
|
||||
mounted_tool_id_present? ? {mounted_tool_id: better_tool_id} : {}
|
||||
mounted_tool_id_present? ? { mounted_tool_id: better_tool_id } : {}
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -26,10 +26,11 @@ describe("resourceUsageList", () => {
|
|||
"Sequence.Sequence": {
|
||||
"Regimen.9.9": { "Sequence.10.10": true, "Sequence.11.11": true }
|
||||
},
|
||||
"Sequence.Device": { "Device.99.99": { "Sequence.12.12": true } }
|
||||
};
|
||||
const actual = Object.keys(resourceUsageList(x)).sort();
|
||||
const expected =
|
||||
["FarmEvent.0.0", "FarmEvent.3.3", "Regimen.6.6", "Regimen.9.9"].sort();
|
||||
["FarmEvent.0.0", "FarmEvent.3.3", "Regimen.6.6", "Regimen.9.9", "Device.99.99"].sort();
|
||||
expect(actual.length).toEqual(expected.length);
|
||||
expected.map(y => expect(actual).toContain(y));
|
||||
});
|
||||
|
|
|
@ -21,7 +21,8 @@ export type UsageKind =
|
|||
| "Regimen.FarmEvent"
|
||||
| "Sequence.Regimen"
|
||||
| "Sequence.FarmEvent"
|
||||
| "Sequence.Sequence";
|
||||
| "Sequence.Sequence"
|
||||
| "Sequence.Device";
|
||||
|
||||
/** This variable ensures that `EVERY_USAGE_KIND` does not have typos and is
|
||||
* up-to-date all `UsageKind`s */
|
||||
|
@ -30,6 +31,7 @@ const values: Record<UsageKind, UsageKind> = {
|
|||
"Sequence.Regimen": "Sequence.Regimen",
|
||||
"Sequence.FarmEvent": "Sequence.FarmEvent",
|
||||
"Sequence.Sequence": "Sequence.Sequence",
|
||||
"Sequence.Device": "Sequence.Device"
|
||||
};
|
||||
|
||||
/** Array that contains every `UsageKind` token for easy runtime iteration. */
|
||||
|
|
|
@ -72,6 +72,7 @@ export const emptyState = (): RestResources => {
|
|||
"Sequence.FarmEvent": {},
|
||||
"Sequence.Regimen": {},
|
||||
"Sequence.Sequence": {},
|
||||
"Sequence.Device": {}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -28,6 +28,7 @@ import { ReduxAction } from "../redux/interfaces";
|
|||
import { ActionHandler } from "../redux/generate_reducer";
|
||||
import { get } from "lodash";
|
||||
import { Actions } from "../constants";
|
||||
import { maybeGetDevice } from "./selectors";
|
||||
|
||||
export function findByUuid(index: ResourceIndex, uuid: string): TaggedResource {
|
||||
const x = index.references[uuid];
|
||||
|
@ -195,6 +196,19 @@ const BEFORE_HOOKS: IndexerHook = {
|
|||
};
|
||||
|
||||
const AFTER_HOOKS: IndexerHook = {
|
||||
Device: (i) => {
|
||||
console.log("Hmmm");
|
||||
const dev = maybeGetDevice(i);
|
||||
if (dev && dev.body.turnkey_sequence_id) {
|
||||
const tracker = i.inUse["Sequence.Device"];
|
||||
const sequence =
|
||||
findByKindAndId(i, "Sequence", dev.body.turnkey_sequence_id);
|
||||
tracker[sequence.uuid] = tracker[sequence.uuid] || {};
|
||||
tracker[sequence.uuid][dev.uuid] = true;
|
||||
} else {
|
||||
i.inUse["Sequence.Device"] = {};
|
||||
}
|
||||
},
|
||||
FarmEvent: reindexAllFarmEventUsage,
|
||||
Sequence: reindexAllSequences,
|
||||
Regimen: (i) => {
|
||||
|
|
|
@ -45,7 +45,7 @@
|
|||
"coveralls": "3.0.6",
|
||||
"enzyme": "3.10.0",
|
||||
"enzyme-adapter-react-16": "1.14.0",
|
||||
"farmbot": "8.2.0-rc1",
|
||||
"farmbot": "8.2.0",
|
||||
"i18next": "17.0.14",
|
||||
"lodash": "4.17.15",
|
||||
"markdown-it": "10.0.0",
|
||||
|
|
|
@ -12,7 +12,7 @@ describe Api::LogsController do
|
|||
expect(response.status).to eq(200)
|
||||
expect(json.first[:id]).to eq(logs.first.id)
|
||||
expect(json.first[:created_at]).to eq(logs.first.created_at.to_i)
|
||||
expect(json.last[:meta][:type]).to eq(logs.last.type)
|
||||
expect(json.last[:type]).to eq(logs.last.type)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Reference in New Issue