})

		Context("when given a simple driverspath", func() {
			Context("with hetergeneous driver specifications", func() {
				BeforeEach(func() {
					err := voldriver.WriteDriverSpec(logger, defaultPluginsDirectory, driverName, "json", []byte("{\"Addr\":\"http://0.0.0.0:8080\"}"))
					Expect(err).NotTo(HaveOccurred())
					err = voldriver.WriteDriverSpec(logger, defaultPluginsDirectory, driverName, "spec", []byte("http://0.0.0.0:9090"))
					Expect(err).NotTo(HaveOccurred())
				})

				It("should preferentially select spec over json specification", func() {
					drivers, err := syncer.Discover(logger)
					Expect(err).ToNot(HaveOccurred())
					Expect(len(drivers)).To(Equal(1))
					_, _, _, specFileName := fakeDriverFactory.DriverArgsForCall(0)
					Expect(specFileName).To(Equal(driverName + ".spec"))
				})
			})
		})

		Context("when given a compound driverspath", func() {
			BeforeEach(func() {
				syncer = vollocal.NewDriverSyncerWithDriverFactory(logger, registry, []string{defaultPluginsDirectory, secondPluginsDirectory}, scanInterval, fakeClock, fakeDriverFactory)
			})

			Context("with a single driver", func() {
				BeforeEach(func() {
					err := voldriver.WriteDriverSpec(logger, secondPluginsDirectory, driverName, "spec", []byte("http://0.0.0.0:8080"))
					Expect(err).NotTo(HaveOccurred())
				})