| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- package controller
- import (
- "go-template/business/util"
- "io/ioutil"
- "os"
- "path/filepath"
- "testing"
- )
- // make test test_func=Test_reportController_Query test_pkg=./business/controller
- func Test_reportController_Query(t *testing.T) {
- t.Run("普通查询", func(t *testing.T) {
- response, err := util.NewTestPostHttpRequest(`{"params":{"id":1}}`, NewReportController().ReportInfo)
- util.NewTesting(t).CheckResult(response, err)
- })
- t.Run("分页查询-1", func(t *testing.T) {
- response, err := util.NewTestPostHttpRequest(`{"params":{"user_id":3768605}}`, NewReportController().ReportList)
- util.NewTesting(t).CheckResult(response, err)
- })
- t.Run("分页查询-2", func(t *testing.T) {
- response, err := util.NewTestPostHttpRequest(`{"params":{"user_id":3768605,"page":1,"page_size":5}}`, NewReportController().ReportList)
- util.NewTesting(t).CheckResult(response, err)
- })
- }
- // make test test_func=Test_reportController_DownLoadCsvFile test_pkg=./business/controller
- // mkdir -p /data/tmp/go-template
- // http://localhost:8080/go-template/download/csv/file?row=1000&column=20
- func Test_reportController_DownLoadCsvFile(t *testing.T) {
- response, err := util.NewTestHttpRequestWithDownLoadFile(map[string]string{"row": "1000", "column": "20"}, NewReportController().DownLoadCsvFile)
- if err != nil {
- t.Fatal(err)
- }
- body, err := ioutil.ReadAll(response.Body)
- if err != nil {
- t.Fatal(err)
- }
- fileName := filepath.Join("/data/tmp/go-template", "test.csv")
- t.Logf("open file : %s\n", fileName)
- file, err := os.OpenFile(fileName, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644)
- if err != nil {
- t.Fatal(err)
- }
- defer file.Close()
- if _, err := file.Write(body); err != nil {
- t.Fatal(err)
- }
- }
- // make test test_func=Test_reportController_DownLoadAndUploadXlsxFile test_pkg=./business/controller
- // mkdir -p /data/tmp/go-template
- // 下载 http://localhost:8080/go-template/download/xlsx/file?row=1000&column=20&&sheet=3
- func Test_reportController_DownLoadAndUploadXlsxFile(t *testing.T) {
- fileName := "test.xlsx"
- filePath := filepath.Join("/data/tmp/go-template", fileName)
- t.Run("下载excel文件: "+filePath, func(t *testing.T) {
- response, err := util.NewTestHttpRequestWithDownLoadFile(map[string]string{"row": "1000", "column": "20", "sheet": "3"}, NewReportController().DownLoadXlsxFile)
- if err != nil {
- t.Fatal(err)
- }
- body, err := ioutil.ReadAll(response.Body)
- if err != nil {
- t.Fatal(err)
- }
- t.Logf("open file : %s\n", filePath)
- file, err := os.OpenFile(filePath, os.O_CREATE|os.O_WRONLY|os.O_TRUNC, 0644)
- if err != nil {
- t.Fatal(err)
- }
- defer file.Close()
- if _, err := file.Write(body); err != nil {
- t.Fatal(err)
- }
- })
- t.Run("上传excel文件: "+filePath, func(t *testing.T) {
- response, err := util.NewTestHttpRequestWithUploadFile(
- map[string]string{"sheet_name": "demo数据-0"},
- []util.FileForm{util.NewFileFormFromFile("file", fileName, filePath)},
- NewReportController().UploadXlsxFile)
- util.NewTesting(t).CheckResult(response, err)
- })
- }
- // make test test_func=Test_reportController_SendMQ test_pkg=./business/controller
- func Test_reportController_SendMQ(t *testing.T) {
- t.Run("test-1", func(t *testing.T) {
- response, err := util.NewTestPostHttpRequest(`{"params":{"topic":"test_topic","message":"hello world , my name is go-template !!!!"}}`, NewReportController().SendMQ)
- util.NewTesting(t).CheckResult(response, err)
- })
- t.Run("test-2", func(t *testing.T) {
- response, err := util.NewTestPostHttpRequest(`{"params":{"message":"hello world , my name is go-template !!!!"}}`, NewReportController().SendMQ)
- util.NewTesting(t).CheckResult(response, err)
- })
- }
- // 记得检测日志!
- // make test test_func=Test_reportController_Panic test_pkg=./business/controller
- func Test_reportController_Panic(t *testing.T) {
- response, err := util.NewTestGetHttpRequest(map[string]string{}, NewReportController().TestPanic)
- if err != nil {
- t.Fatal(err)
- }
- body, err := ioutil.ReadAll(response.Body)
- if err != nil {
- t.Fatal(err)
- }
- t.Logf("response body: %s, status: %v", body, response.StatusCode)
- }
|