} metadataService.InstanceID = "fake-identifier" metadataService.RegistryEndpoint = ts.URL settings, err := registry.GetSettings() Expect(err).ToNot(HaveOccurred()) Expect(settings).To(Equal(expectedSettings)) }) }) }) Context("when registry is configured to use server name as id", func() { BeforeEach(func() { registry = NewConcreteRegistry(metadataService, true) metadataService.ServerName = "fake-identifier" metadataService.RegistryEndpoint = ts.URL }) It("returns settings fetched from http server based on server name", func() { settingsJSON = `{"settings": "{\"agent_id\":\"my-agent-id\"}"}` settings, err := registry.GetSettings() Expect(err).ToNot(HaveOccurred()) Expect(settings).To(Equal(boshsettings.Settings{AgentID: "my-agent-id"})) }) It("returns error if registry settings wrapper cannot be parsed", func() { settingsJSON = "invalid-json" settings, err := registry.GetSettings()