42 lines
1.1 KiB
Ruby
42 lines
1.1 KiB
Ruby
require "spec_helper"
|
|
|
|
describe Resources::Job do
|
|
it "executes deletion for various resources" do
|
|
puts "TODO: Test cases for points, sequences."
|
|
device = FactoryBot.create(:device)
|
|
base = \
|
|
{ body: {}, device: device, action: "destroy", uuid: SecureRandom.uuid }
|
|
|
|
test_cases = [
|
|
FarmEvent,
|
|
FarmwareInstallation,
|
|
Image,
|
|
Log,
|
|
PlantTemplate,
|
|
SavedGarden,
|
|
SensorReading,
|
|
WebcamFeed,
|
|
Peripheral,
|
|
PinBinding,
|
|
Sensor,
|
|
# Tool,
|
|
# Point,
|
|
# Regimen,
|
|
]
|
|
.each{ |k| k.destroy_all }
|
|
.map { |k| FactoryBot.create(k.model_name.singular.to_sym, device: device) }
|
|
.concat([FakeSequence.create( device: device)])
|
|
.map { |r| base.merge({resource: r.class, resource_id: r.id }) }
|
|
.map do |params|
|
|
res = params[:resource]
|
|
count = res.count
|
|
expect(count).to eq(1)
|
|
Resources::Job.run!(params)
|
|
expect(res.count).to eq(0)
|
|
end
|
|
end
|
|
|
|
it "deals with points later"
|
|
it "doesn't let you delete other people's resources"
|
|
end
|