product_test.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package product
  2. import (
  3. "fmt"
  4. "gorm.io/driver/mysql"
  5. "gorm.io/gorm"
  6. "gorm.io/gorm/logger"
  7. "gorm.io/gorm/schema"
  8. "sghgogs.com/micro/shopping-service/domain/repository"
  9. "sghgogs.com/micro/shopping-service/domain/service"
  10. pb "sghgogs.com/micro/shopping-service/proto"
  11. "testing"
  12. )
  13. func TestProduct(t *testing.T) {
  14. address := fmt.Sprintf("%v:%v@(%v:%v)/%v?charset=utf8mb4,utf8&parseTime=True&loc=Local", "root", "xugang131500", "47.56.16.206", 3306, "shopping_wenke")
  15. db, err := gorm.Open(mysql.Open(address), &gorm.Config{
  16. Logger: logger.Default.LogMode(logger.Info),
  17. NamingStrategy: schema.NamingStrategy{
  18. SingularTable: true,
  19. }})
  20. if err != nil {
  21. t.Fatal(err)
  22. }
  23. repo := repository.NewRepository(db)
  24. // repository.NewRepository(db)
  25. newService := service.NewService(repo, "shoppingservice")
  26. t.Run("创建", func(t *testing.T) {
  27. products := []*pb.Product{
  28. {
  29. Name: "iphone 16",
  30. Description: "苹果手机",
  31. Price: 8000,
  32. StockQuantity: 10000,
  33. CategoryId: 4,
  34. },
  35. }
  36. err2 := newService.CreateMultipleProducts(&pb.CreateProductRequest{
  37. Items: products,
  38. })
  39. fmt.Println(err2)
  40. })
  41. t.Run("查询列表", func(t *testing.T) {
  42. list, i, err2 := newService.GetProductList(&pb.GetProductListRequest{
  43. Page: 1,
  44. PageSize: 10,
  45. })
  46. fmt.Println(list, i, err2)
  47. })
  48. t.Run("查询详情", func(t *testing.T) {
  49. product, err2 := newService.GetProduct(&pb.GetProductRequest{ProductId: 1})
  50. fmt.Println(product, err2)
  51. // user, err2 := newService.(&pb.GetUserRequest{UserId: 1})
  52. // fmt.Println(user, err2)
  53. })
  54. }