github.com/easysoft/zendata@v0.0.0-20240513203326-705bd5a7fd67/cmd/test/command/cmd_gen_demo2_test.go (about)

     1  package main
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/easysoft/zendata/cmd/test/gen"
     7  	testHelper "github.com/easysoft/zendata/cmd/test/helper"
     8  	"github.com/ozontech/allure-go/pkg/framework/provider"
     9  	"github.com/ozontech/allure-go/pkg/framework/suite"
    10  )
    11  
    12  func TestGenerateDemo2Cmd(t *testing.T) {
    13  	suite.RunSuite(t, new(GenerateDemo2CmdSuite))
    14  
    15  }
    16  
    17  type GenerateDemo2CmdSuite struct {
    18  	suite.Suite
    19  }
    20  
    21  func (s *GenerateDemo2CmdSuite) BeforeAll(t provider.T) {
    22  	testHelper.BeforeAll()
    23  	t.AddSubSuite("GenerateDemo2Cmd")
    24  }
    25  func (s *GenerateDemo2CmdSuite) BeforeEach(t provider.T) {
    26  	testHelper.PreCase()
    27  	t.AddSubSuite("GenerateDemo2Cmd")
    28  }
    29  func (s *GenerateDemo2CmdSuite) AfterEach(t provider.T) {
    30  	testHelper.PostCase()
    31  }
    32  
    33  func (s *GenerateDemo2CmdSuite) TestGenerateDemo14(t provider.T) {
    34  	t.ID("0")
    35  
    36  	out := gen.New().
    37  		SetConfigs([]string{"demo/14_from_config.yaml"}).
    38  		SetFields("").
    39  		Gen()
    40  
    41  	t.Require().Contains(out, "'106,107'", "check generated data")
    42  }
    43  
    44  func (s *GenerateDemo2CmdSuite) TestGenerateDemo15(t provider.T) {
    45  	t.ID("0")
    46  
    47  	out := gen.New().
    48  		SetConfigs([]string{"demo/15_from_range.yaml"}).
    49  		SetFields("").
    50  		Gen()
    51  
    52  	t.Require().Contains(out, "103\t101\t", "check generated data")
    53  }
    54  
    55  func (s *GenerateDemo2CmdSuite) TestGenerateDemo16(t provider.T) {
    56  	t.ID("0")
    57  
    58  	out := gen.New().
    59  		SetConfigs([]string{"demo/16_from_instance.yaml"}).
    60  		SetFields("").
    61  		Gen()
    62  
    63  	t.Require().Contains(out, "172.18.2.3\t192.168.0.1", "check generated data")
    64  }
    65  
    66  func (s *GenerateDemo2CmdSuite) TestGenerateDemo17(t provider.T) {
    67  	t.ID("0")
    68  
    69  	out := gen.New().
    70  		SetConfigs([]string{"demo/17_from_results.yaml"}).
    71  		SetFields("").
    72  		Gen()
    73  
    74  	expect := "'106,107'\t ~~~ 101\t1\t"
    75  	t.Require().Contains(out, expect, "check generated data")
    76  }
    77  
    78  func (s *GenerateDemo2CmdSuite) TestGenerateDemo18(t provider.T) {
    79  	t.ID("0")
    80  
    81  	out := gen.New().
    82  		SetConfigs([]string{"demo/18_from_excel.yaml"}).
    83  		SetFields("").
    84  		Gen()
    85  
    86  	t.Require().Contains(out, "山东", "check generated data")
    87  	t.Require().Contains(out, "青岛", "check generated data")
    88  }
    89  
    90  func (s *GenerateDemo2CmdSuite) TestGenerateDemo19(t provider.T) {
    91  	t.ID("0")
    92  
    93  	out := gen.New().
    94  		SetConfigs([]string{"demo/19_multi_from.yaml"}).
    95  		SetFields("").
    96  		Gen()
    97  
    98  	expect := "[172.18.2.3]\t\n[1.0.0.1]"
    99  	t.Require().Contains(out, expect, "check generated data")
   100  }
   101  
   102  func (s *GenerateDemo2CmdSuite) TestGenerateDemo20(t provider.T) {
   103  	t.ID("0")
   104  
   105  	out := gen.New().
   106  		SetConfigs([]string{"demo/20_children_recursive.yaml"}).
   107  		SetFields("").
   108  		Gen()
   109  
   110  	t.Require().Contains(out, "2_B\t1_B\t", "check generated data")
   111  }
   112  
   113  func (s *GenerateDemo2CmdSuite) TestGenerateDemo23(t provider.T) {
   114  	t.ID("0")
   115  
   116  	out := gen.New().
   117  		SetConfigs([]string{"demo/23_article.yaml"}).
   118  		SetFields("").
   119  		Gen()
   120  
   121  	t.Require().Contains(out, "家人", "check generated data")
   122  	t.Require().NotContains(out, "{人称代词}", "check generated data")
   123  }
   124  
   125  func (s *GenerateDemo2CmdSuite) TestGenerateDemo25(t provider.T) {
   126  	t.ID("0")
   127  
   128  	out := gen.New().
   129  		SetConfigs([]string{"demo/25_json_nested.yaml"}).
   130  		SetFields("").
   131  		SetOutput("test/out/result.json").
   132  		Gen()
   133  
   134  	expect := `"join_true": "PART1_A | part2_a | CHILD1_A | CHILD2_a"`
   135  	t.Require().Contains(out, expect, "check generated data")
   136  }
   137  
   138  func (s *GenerateDemo2CmdSuite) TestGenerateDemo26(t provider.T) {
   139  	t.ID("0")
   140  
   141  	out := gen.New().
   142  		SetConfigs([]string{"demo/26_json_join_children.yaml"}).
   143  		SetFields("").
   144  		SetOutput("test/out/result.json").
   145  		Gen()
   146  
   147  	expect := `"field2": "PART1_A | part2_U | part3_son1_b_son2_v"`
   148  	t.Require().Contains(out, expect, "check generated data")
   149  }