func (s *S) TestFindOneItemSchemaWithNotFound(c *check.C) { filter, err := db.NewFilterFromQueryString("filter[where][collectionName]=not-found") c.Assert(err, check.IsNil) _, dbErr := s.Db.FindOneItemSchema(filter) c.Assert(dbErr, check.NotNil) c.Assert(dbErr.StatusCode(), check.Equals, 404) }
func (s *S) TestFindOneItemSchemaWithExactPattern(c *check.C) { for i := 0; i < 3; i++ { dbErr := s.Db.CreateItemSchema(&schemas.ItemSchema{CollectionName: fmt.Sprintf("find-one-exact-%d", i)}) c.Assert(dbErr, check.IsNil) } filter, err := db.NewFilterFromQueryString("filter[where][collectionName]=find-one-exact-1") c.Assert(err, check.IsNil) itemSchema, dbErr := s.Db.FindOneItemSchema(filter) c.Assert(dbErr, check.IsNil) c.Assert(itemSchema.CollectionName, check.Equals, "find-one-exact-1") }
func (s *S) TestFindItemSchema(c *check.C) { for i := 0; i < 3; i++ { dbErr := s.Db.CreateItemSchema(&schemas.ItemSchema{CollectionName: fmt.Sprintf("find-%d", i)}) c.Assert(dbErr, check.IsNil) i++ } filter, err := db.NewFilterFromQueryString("") c.Assert(err, check.IsNil) reply, dbErr := s.Db.FindItemSchema(filter) c.Assert(dbErr, check.IsNil) c.Assert(len(reply.Items) > 3, check.Equals, true) }
func (s *Server) findItemSchema(t *transaction.Transaction) { filter, err := db.NewFilterFromQueryString(t.Req.URL.RawQuery) if err != nil { t.WriteError(errors.Wraps(err, 400)) return } reply, findErr := s.DB.FindItemSchema(filter) if findErr != nil { t.WriteError(findErr) return } t.WriteResult(reply) }
func (s *Server) findOneItemSchema(t *transaction.Transaction) { filter, err := db.NewFilterFromQueryString(t.Req.URL.RawQuery) if err != nil { t.WriteError(errors.Wraps(err, 400)) return } itemSchema, findErr := s.DB.FindOneItemSchema(filter) if findErr != nil { t.WriteError(findErr) return } itemSchema.AttachDefaultLinks(t.BaseUrl()) t.WriteResult(itemSchema) }
func (s *Server) findItemSchema(t *transaction.Transaction) { filter, err := db.NewFilterFromQueryString(t.Req.URL.RawQuery) if err != nil { t.WriteError(errors.Wraps(err, 400)) return } reply, findErr := s.DB.FindItemSchema(filter) if findErr != nil { t.WriteError(findErr) return } baseUrl := t.BaseUrl() for _, itemSchema := range reply.Items { itemSchema.AttachDefaultLinks(baseUrl) } t.WriteResult(reply) }