func (s *SnapSuite) TestKnownRemote(c *check.C) { var server *httptest.Server restorer := snap.MockStoreNew(func(cfg *store.Config, auth auth.AuthContext) *store.Store { if cfg == nil { cfg = store.DefaultConfig() } serverURL, err := url.Parse(server.URL + "/assertions/") c.Assert(err, check.IsNil) cfg.AssertionsURI = serverURL return store.New(cfg, auth) }) defer restorer() n := 0 server = httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { switch n { case 0: c.Check(r.Method, check.Equals, "GET") c.Check(r.URL.Path, check.Equals, "/assertions/model/16/canonical/pi99") fmt.Fprintln(w, mockModelAssertion) default: c.Fatalf("expected to get 1 requests, now on %d", n+1) } n++ })) rest, err := snap.Parser().ParseArgs([]string{"known", "--remote", "model", "series=16", "brand-id=canonical", "model=pi99"}) c.Assert(err, check.IsNil) c.Assert(rest, check.DeepEquals, []string{}) c.Check(s.Stdout(), check.Equals, mockModelAssertion) c.Check(s.Stderr(), check.Equals, "") }
func makeStore(model *asserts.Model) Store { cfg := store.DefaultConfig() cfg.Architecture = model.Architecture() cfg.Series = model.Series() cfg.StoreID = model.Store() return store.New(cfg, nil) }