|
|
@@ -250,6 +250,9 @@ func (s *HidrawInterfaceSuite) TestConnectedPlugUDevSnippets(c *C) { |
|
|
expectedSnippet1 := `# hidraw
|
|
|
SUBSYSTEM=="hidraw", KERNEL=="hidraw0", TAG+="snap_client-snap_app-accessing-2-devices"`
|
|
|
c.Assert(snippet, Equals, expectedSnippet1)
|
|
|
+ extraSnippet := spec.Snippets()[1]
|
|
|
+ expectedExtraSnippet1 := `TAG=="snap_client-snap_app-accessing-2-devices", RUN+="/lib/udev/snappy-app-dev $env{ACTION} snap_client-snap_app-accessing-2-devices $devpath $major:$minor"`
|
|
|
+ c.Assert(extraSnippet, Equals, expectedExtraSnippet1)
|
|
|
|
|
|
// add the plug for the first slot with vendor and product ids
|
|
|
spec = &udev.Specification{}
|
|
|
@@ -260,6 +263,9 @@ SUBSYSTEM=="hidraw", KERNEL=="hidraw0", TAG+="snap_client-snap_app-accessing-2-d |
|
|
IMPORT{builtin}="usb_id"
|
|
|
SUBSYSTEM=="hidraw", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0001", ATTRS{idProduct}=="0001", TAG+="snap_client-snap_app-accessing-2-devices"`
|
|
|
c.Assert(snippet, Equals, expectedSnippet2)
|
|
|
+ extraSnippet = spec.Snippets()[1]
|
|
|
+ expectedExtraSnippet2 := `TAG=="snap_client-snap_app-accessing-2-devices", RUN+="/lib/udev/snappy-app-dev $env{ACTION} snap_client-snap_app-accessing-2-devices $devpath $major:$minor"`
|
|
|
+ c.Assert(extraSnippet, Equals, expectedExtraSnippet2)
|
|
|
|
|
|
// add the plug for the second slot with vendor and product ids
|
|
|
spec = &udev.Specification{}
|
|
|
@@ -270,6 +276,9 @@ SUBSYSTEM=="hidraw", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0001", ATTRS{idProduct |
|
|
IMPORT{builtin}="usb_id"
|
|
|
SUBSYSTEM=="hidraw", SUBSYSTEMS=="usb", ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="ffff", TAG+="snap_client-snap_app-accessing-2-devices"`
|
|
|
c.Assert(snippet, Equals, expectedSnippet3)
|
|
|
+ extraSnippet = spec.Snippets()[1]
|
|
|
+ expectedExtraSnippet3 := `TAG=="snap_client-snap_app-accessing-2-devices", RUN+="/lib/udev/snappy-app-dev $env{ACTION} snap_client-snap_app-accessing-2-devices $devpath $major:$minor"`
|
|
|
+ c.Assert(extraSnippet, Equals, expectedExtraSnippet3)
|
|
|
}
|
|
|
|
|
|
func (s *HidrawInterfaceSuite) TestConnectedPlugAppArmorSnippets(c *C) {
|
|
|
@@ -301,32 +310,41 @@ func (s *HidrawInterfaceSuite) TestConnectedPlugAppArmorSnippets(c *C) { |
|
|
func (s *HidrawInterfaceSuite) TestConnectedPlugUDevSnippetsForPath(c *C) {
|
|
|
expectedSnippet1 := `# hidraw
|
|
|
SUBSYSTEM=="hidraw", KERNEL=="hidraw0", TAG+="snap_client-snap_app-accessing-2-devices"`
|
|
|
+ expectedExtraSnippet1 := `TAG=="snap_client-snap_app-accessing-2-devices", RUN+="/lib/udev/snappy-app-dev $env{ACTION} snap_client-snap_app-accessing-2-devices $devpath $major:$minor"`
|
|
|
udevSpec := &udev.Specification{}
|
|
|
err := udevSpec.AddConnectedPlug(s.iface, s.testPlugPort1, s.testSlot1)
|
|
|
c.Assert(err, IsNil)
|
|
|
c.Assert(udevSpec.Snippets(), HasLen, 2)
|
|
|
snippet := udevSpec.Snippets()[0]
|
|
|
c.Assert(snippet, Equals, expectedSnippet1)
|
|
|
+ extraSnippet := udevSpec.Snippets()[1]
|
|
|
+ c.Assert(extraSnippet, Equals, expectedExtraSnippet1)
|
|
|
|
|
|
expectedSnippet2 := `# hidraw
|
|
|
IMPORT{builtin}="usb_id"
|
|
|
SUBSYSTEM=="hidraw", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0001", ATTRS{idProduct}=="0001", TAG+="snap_client-snap_app-accessing-2-devices"`
|
|
|
+ expectedExtraSnippet2 := `TAG=="snap_client-snap_app-accessing-2-devices", RUN+="/lib/udev/snappy-app-dev $env{ACTION} snap_client-snap_app-accessing-2-devices $devpath $major:$minor"`
|
|
|
udevSpec = &udev.Specification{}
|
|
|
err = udevSpec.AddConnectedPlug(s.iface, s.testPlugPort1, s.testUDev1)
|
|
|
c.Assert(err, IsNil)
|
|
|
c.Assert(udevSpec.Snippets(), HasLen, 2)
|
|
|
snippet = udevSpec.Snippets()[0]
|
|
|
c.Assert(snippet, Equals, expectedSnippet2)
|
|
|
+ extraSnippet = udevSpec.Snippets()[1]
|
|
|
+ c.Assert(extraSnippet, Equals, expectedExtraSnippet2)
|
|
|
|
|
|
expectedSnippet3 := `# hidraw
|
|
|
IMPORT{builtin}="usb_id"
|
|
|
SUBSYSTEM=="hidraw", SUBSYSTEMS=="usb", ATTRS{idVendor}=="ffff", ATTRS{idProduct}=="ffff", TAG+="snap_client-snap_app-accessing-2-devices"`
|
|
|
+ expectedExtraSnippet3 := `TAG=="snap_client-snap_app-accessing-2-devices", RUN+="/lib/udev/snappy-app-dev $env{ACTION} snap_client-snap_app-accessing-2-devices $devpath $major:$minor"`
|
|
|
udevSpec = &udev.Specification{}
|
|
|
err = udevSpec.AddConnectedPlug(s.iface, s.testPlugPort2, s.testUDev2)
|
|
|
c.Assert(err, IsNil)
|
|
|
c.Assert(udevSpec.Snippets(), HasLen, 2)
|
|
|
snippet = udevSpec.Snippets()[0]
|
|
|
c.Assert(snippet, Equals, expectedSnippet3)
|
|
|
+ extraSnippet = udevSpec.Snippets()[1]
|
|
|
+ c.Assert(extraSnippet, Equals, expectedExtraSnippet3)
|
|
|
}
|
|
|
|
|
|
func (s *HidrawInterfaceSuite) TestInterfaces(c *C) {
|
|
|
|