Fix blinky test

pull/979/head
Rick Carlino 2018-09-12 13:25:35 -05:00
parent 026eca4a4d
commit ac6e5387b3
3 changed files with 34 additions and 14 deletions

View File

@ -74,9 +74,8 @@ module CeleryScriptSettingsBag
"BoxLed4" => BoxLed }
CANT_ANALOG = "Analog modes are not supported for Box LEDs"
ALLOWED_PIN_TYPES = PIN_TYPE_MAP.keys
KLASS_LOOKUP = Point::POINTER_KINDS.reduce({}) do |acc, val|
(acc[val] = Kernel.const_get(val)) && acc
end
# KLASS_LOOKUP =
# Point::POINTER_KINDS.reduce({}) { |a, v| (a[v] = Kernel.const_get(v)) && a }
RESOURCE_UPDATE_ARGS = [:resource_type, :resource_id, :label, :value]
Corpus = CeleryScript::Corpus

View File

@ -27,7 +27,7 @@ describe CeleryScript::Corpus do
speed: 100
}
})
check1 = CeleryScript::Checker.new(ok1, Sequence::Corpus, device)
check1 = CeleryScript::Checker.new(ok1, corpus, device)
expect(check1.valid?).to be_truthy
ok2 = CeleryScript::AstNode.new({
@ -48,7 +48,7 @@ describe CeleryScript::Corpus do
speed: 100
}
})
check2 = CeleryScript::Checker.new(ok2, Sequence::Corpus, device)
check2 = CeleryScript::Checker.new(ok2, corpus, device)
expect(check2.valid?).to be_truthy
end
@ -68,7 +68,7 @@ describe CeleryScript::Corpus do
},
}
})
check = CeleryScript::Checker.new(bad, Sequence::Corpus, device)
check = CeleryScript::Checker.new(bad, corpus, device)
expect(check.valid?).to be_falsey
expect(check.error.message).to include("but got Integer")
expect(check.error.message).to include("'location' within 'move_absolute'")
@ -94,7 +94,7 @@ describe CeleryScript::Corpus do
speed: 100
}
})
check = CeleryScript::Checker.new(bad, Sequence::Corpus, device)
check = CeleryScript::Checker.new(bad, corpus, device)
expect(check.valid?).to be_falsey
expect(check.error.message).to include("but got String")
end
@ -123,9 +123,7 @@ describe CeleryScript::Corpus do
},
"body": []
})
checker = CeleryScript::Checker.new(tree,
CeleryScriptSettingsBag::Corpus,
device)
checker = CeleryScript::Checker.new(tree, corpus, device)
expect(checker.error.message).to include("not a valid message_type")
end
@ -145,9 +143,32 @@ describe CeleryScript::Corpus do
}
]
})
checker = CeleryScript::Checker.new(tree,
CeleryScriptSettingsBag::Corpus,
device)
checker = CeleryScript::Checker.new(tree, corpus, device)
expect(checker.error.message).to include("not a valid channel_name")
end
it "validates tool_ids" do
ast = { "kind": "tool", "args": { "tool_id": 0 } };
checker = CeleryScript::Checker.new(CeleryScript::AstNode.new(ast),
corpus,
device)
expect(checker.valid?).to be(false)
expect(checker.error.message).to include("Tool #0 does not exist.")
end
it "Validates resource_update nodes" do
ast = {
kind: "resource_update",
args: {
resource_type: "Device",
resource_id: 23,
label: "mounted_tool_id",
value: 1
}
}
ast = { "kind": "tool", "args": { "tool_id": 0 } };
checker = CeleryScript::Checker.new(CeleryScript::AstNode.new(ast),
corpus,
device)
end
end

View File

@ -20,7 +20,7 @@ end
describe "Pin Binding updates" do
it "enforces mutual exclusivity" do
Device.destroy_all
Device.update_all(mounted_tool_id: nil)
[Point, Tool, PinBinding, Sequence].map(&:destroy_all)
device = FactoryBot.create(:device)
PinBinding.create!(device: device)