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 }