func checkDummy(c *C, f charm.Charm, path string) { c.Assert(f.Revision(), Equals, 1) c.Assert(f.Meta().Name, Equals, "dummy") c.Assert(f.Config().Options["title"].Default, Equals, "My Title") switch f := f.(type) { case *charm.Bundle: c.Assert(f.Path, Equals, path) case *charm.Dir: c.Assert(f.Path, Equals, path) } }
// AddCharm adds the ch charm with curl to the state. bundleUrl must be // set to a URL where the bundle for ch may be downloaded from. // On success the newly added charm state is returned. func (st *State) AddCharm(ch charm.Charm, curl *charm.URL, bundleURL *url.URL, bundleSha256 string) (stch *Charm, err error) { cdoc := &charmDoc{ URL: curl, Meta: ch.Meta(), Config: ch.Config(), BundleURL: bundleURL, BundleSha256: bundleSha256, } err = st.charms.Insert(cdoc) if err != nil { return nil, fmt.Errorf("cannot add charm %q: %v", curl, err) } return newCharm(st, cdoc) }