convert_company_status_test.go 2.1 KB
package company

import (
	"fmt"
	"github.com/go-pg/pg/v10"
	"gitlab.fjmaimaimai.com/mmm-go-pp/partner01/pkg/domain"
	"net/http"
	"time"

	"github.com/gavv/httpexpect"
	. "github.com/onsi/ginkgo"
	. "github.com/onsi/gomega"
	pG "gitlab.fjmaimaimai.com/mmm-go-pp/partner01/pkg/infrastructure/pg"
)

var _ = Describe("公司状态转换  禁用、启用", func() {
	var companyId int64
	var newCompany *domain.Company
	BeforeEach(func() {
		newCompany = &domain.Company{
			CompanyId: GinkgoRandomSeed(),
			CompanyInfo: &domain.CompanyInfo{
				Name:         "公司名称", // 公司名称
				Abbreviation: "公司简称", // 公司简称
				Logo:         "",     // 公司logo
				Phone:        "",     // 公司联系电话
				Status:       1,      // 状态 1正常 2禁用
				Remarks:      "备注",   // 备注
				Enable:       1,      // 是否有效【1:有效】【2:无效】
				Admin: &domain.CompanyAdmin{
					UserAccount: fmt.Sprint(GinkgoRandomSeed()), // 用户手机号
					UserName:    "用户名称",                         // 用户名称
				},                    // 公司主管理员
			},
			CreateAt: time.Now(),
			UpdateAt: time.Now(),
		}

		_, err := pG.DB.QueryOne(
			pg.Scan(&companyId),
			"INSERT INTO companies (company_id, company_info, create_at, update_at) VALUES (?, ?, ?, ?) RETURNING company_id",
			newCompany.CompanyId, newCompany.CompanyInfo, newCompany.CreateAt, newCompany.UpdateAt)

		Expect(err).NotTo(HaveOccurred())
	})
	Describe("公司状态转换  禁用、启用", func() {
		Context("", func() {
			It("", func() {
				httpExpect := httpexpect.New(GinkgoT(), server.URL)
				body := map[string]interface{}{
					"companyId": newCompany.CompanyId,
					"status":    1,
				}
				httpExpect.POST("/companies/convertCompanyStatus").
					WithJSON(body).
					Expect().
					Status(http.StatusOK).
					JSON().
					Object().
					ContainsKey("code").ValueEqual("code", 0).
					ContainsKey("msg").ValueEqual("msg", "ok").
					ContainsKey("data").Value("data").Object()
			})
		})
	})
	AfterEach(func() {
		_, err := pG.DB.Exec("DELETE FROM companies WHERE true")
		Expect(err).NotTo(HaveOccurred())
	})
})