func (s *connInfoSuite) TestNewMongoConnInfoMissingTag(c *gc.C) { mgoInfo := mongo.MongoInfo{ Info: mongo.Info{ Addrs: []string{"localhost:8080"}, }, Password: "******", } connInfo := db.NewMongoConnInfo(&mgoInfo) err := connInfo.Validate() c.Check(err, gc.ErrorMatches, "missing username") }
// Create is the API method that requests juju to create a new backup // of its state. It returns the metadata for that backup. func (a *API) Create(args params.BackupsCreateArgs) (p params.BackupsMetadataResult, err error) { mgoInfo := a.st.MongoConnectionInfo() dbInfo := db.NewMongoConnInfo(mgoInfo) machine := "0" // We *could* pull this from state. origin := state.NewBackupsOrigin(a.st, machine) meta, err := a.backups.Create(*dbInfo, *origin, args.Notes) if err != nil { return p, errors.Trace(err) } p.UpdateFromMetadata(meta) return p, nil }
func (s *connInfoSuite) TestNewMongoConnInfoOkay(c *gc.C) { tag, err := names.ParseTag("machine-0") c.Assert(err, gc.IsNil) mgoInfo := mongo.MongoInfo{ Info: mongo.Info{ Addrs: []string{"localhost:8080"}, }, Tag: tag, Password: "******", } connInfo := db.NewMongoConnInfo(&mgoInfo) err = connInfo.Validate() c.Assert(err, gc.IsNil) c.Check(connInfo.Address, gc.Equals, "localhost:8080") c.Check(connInfo.Username, gc.Equals, "machine-0") c.Check(connInfo.Password, gc.Equals, "eggs") }