func (s *cloudImageMetadataSuite) TestFindMetadata(c *gc.C) { attrs := cloudimagemetadata.MetadataAttributes{ Stream: "stream", Region: "region", Version: "14.04", Series: "trusty", Arch: "arch", VirtType: "virtType", Source: "test", RootStorageType: "rootStorageType"} m := cloudimagemetadata.Metadata{attrs, 0, "1", 0} _, err := s.storage.FindMetadata(buildAttributesFilter(attrs)) c.Assert(err, jc.Satisfies, errors.IsNotFound) s.assertRecordMetadata(c, m) expected := []cloudimagemetadata.Metadata{m} s.assertMetadataRecorded(c, attrs, expected...) attrs.Stream = "another_stream" m = cloudimagemetadata.Metadata{attrs, 0, "2", 0} s.assertRecordMetadata(c, m) expected = append(expected, m) // Should find both s.assertMetadataRecorded(c, cloudimagemetadata.MetadataAttributes{Region: "region"}, expected...) }