Files
zeekay 1943f1c093 Hanzo Commerce
Multi-tenant commerce and billing: orders, subscriptions, invoices, plans,
usage metering and a credit ledger. One Go binary. MIT OR Apache-2.0.

Claude-Session: https://claude.ai/code/session_01SAtaDFm8VDiWrhYHNNtxMw
2026-09-23 21:52:16 -07:00

67 lines
1.4 KiB
Go

package test
import (
"github.com/hanzoai/commerce/models/product"
"github.com/hanzoai/commerce/models/review"
"github.com/hanzoai/commerce/models/user"
. "github.com/hanzoai/commerce/util/test/ginkgo"
)
var _ = Describe("review", func() {
Context("New review", func() {
req := new(review.Review)
res := new(review.Review)
Before(func() {
usr := user.Fake(db)
usr.MustCreate()
prod := product.Fake(db)
prod.MustCreate()
req = review.Fake(db, usr.Id(), prod.Id())
res = review.New(db)
// Create new referrer
cl.Post("/review", req, res)
})
It("Should create new reviews", func() {
Expect(res.UserId).To(Equal(req.UserId))
Expect(res.ProductId).To(Equal(req.ProductId))
Expect(res.Name).To(Equal(req.Name))
Expect(res.Comment).To(Equal(req.Comment))
Expect(res.Rating).To(Equal(req.Rating))
})
})
Context("Get review", func() {
req := new(review.Review)
Before(func() {
usr := user.Fake(db)
usr.MustCreate()
prod := product.Fake(db)
prod.MustCreate()
req = review.Fake(db, usr.Id(), prod.Id())
req.Enabled = false
req.MustCreate()
})
It("Should not get disabled reviews", func() {
req.Enabled = false
req.MustUpdate()
cl.Get("/review/"+req.Id(), nil, 404)
})
It("Should get enabled reviews", func() {
req.Enabled = true
req.MustUpdate()
cl.Get("/review/"+req.Id(), nil, 200)
})
})
})