func (s *binaryStorageSuite) testStorageParams(c *gc.C, collName string, uuids []string, openStorage storageOpener) { var uuidArgs []string s.PatchValue(state.BinarystorageNew, func( modelUUID string, managedStorage blobstore.ManagedStorage, metadataCollection mongo.Collection, runner jujutxn.Runner, ) binarystorage.Storage { uuidArgs = append(uuidArgs, modelUUID) c.Assert(managedStorage, gc.NotNil) c.Assert(metadataCollection.Name(), gc.Equals, collName) c.Assert(runner, gc.NotNil) return nil }) storage, err := openStorage() c.Assert(err, jc.ErrorIsNil) storage.Close() c.Assert(uuidArgs, jc.DeepEquals, uuids) }
func (s *binaryStorageSuite) testStorage(c *gc.C, collName string, openStorage storageOpener) { session := s.State.MongoSession() collectionNames, err := session.DB("juju").CollectionNames() c.Assert(err, jc.ErrorIsNil) nameSet := set.NewStrings(collectionNames...) c.Assert(nameSet.Contains(collName), jc.IsFalse) storage, err := openStorage() c.Assert(err, jc.ErrorIsNil) defer func() { err := storage.Close() c.Assert(err, jc.ErrorIsNil) }() err = storage.Add(strings.NewReader(""), binarystorage.Metadata{}) c.Assert(err, jc.ErrorIsNil) collectionNames, err = session.DB("juju").CollectionNames() c.Assert(err, jc.ErrorIsNil) nameSet = set.NewStrings(collectionNames...) c.Assert(nameSet.Contains(collName), jc.IsTrue) }