ermcp3_test.go 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. /**
  2. * @Author : zou.yingbin
  3. * @Create : 2022/1/18 11:26
  4. * @Modify : 2022/1/18 11:26
  5. * @note :
  6. */
  7. package models
  8. import "testing"
  9. func TestXHDeliveryGoods_filterSubEmpty(t *testing.T) {
  10. tests := []struct {
  11. name string
  12. args []XHDeliveryGoods
  13. wantLen int
  14. }{
  15. {
  16. name: "01",
  17. args: []XHDeliveryGoods{
  18. {
  19. AREAUSERID: 100,
  20. WDLST: []XHWrstandard{},
  21. },
  22. },
  23. wantLen: 0,
  24. },
  25. {
  26. name: "02",
  27. args: []XHDeliveryGoods{
  28. {
  29. AREAUSERID: 100,
  30. WDLST: []XHWrstandard{
  31. {
  32. DELIVERYGOODSID: 1,
  33. },
  34. },
  35. },
  36. },
  37. wantLen: 0,
  38. },
  39. {
  40. name: "03",
  41. args: []XHDeliveryGoods{
  42. {
  43. AREAUSERID: 100,
  44. WDLST: []XHWrstandard{
  45. {
  46. DELIVERYGOODSID: 1,
  47. MGLST: []XHMiddleGoods{
  48. {
  49. MIDDLEGOODSID: 2,
  50. },
  51. },
  52. },
  53. },
  54. },
  55. },
  56. wantLen: 0,
  57. },
  58. {
  59. name: "04",
  60. args: []XHDeliveryGoods{
  61. {
  62. AREAUSERID: 100,
  63. WDLST: []XHWrstandard{
  64. {
  65. DELIVERYGOODSID: 1,
  66. MGLST: []XHMiddleGoods{
  67. {
  68. MIDDLEGOODSID: 2,
  69. GPLST: []TBGoodsGroup{
  70. },
  71. },
  72. },
  73. },
  74. },
  75. },
  76. },
  77. wantLen: 0,
  78. },
  79. {
  80. name: "05",
  81. args: []XHDeliveryGoods{
  82. {
  83. AREAUSERID: 100,
  84. WDLST: []XHWrstandard{
  85. {
  86. DELIVERYGOODSID: 1,
  87. MGLST: []XHMiddleGoods{
  88. {
  89. MIDDLEGOODSID: 2,
  90. GPLST: []TBGoodsGroup{
  91. {
  92. GOODSGROUPID: 1,
  93. GDLST: []TBGoods{
  94. {
  95. GOODSID: 1001,
  96. },
  97. },
  98. },
  99. },
  100. },
  101. },
  102. },
  103. },
  104. },
  105. },
  106. wantLen: 1,
  107. },
  108. {
  109. name: "06",
  110. args: []XHDeliveryGoods{
  111. {
  112. AREAUSERID: 100,
  113. WDLST: []XHWrstandard{
  114. {
  115. WRSTANDARDID: 1,
  116. MGLST: []XHMiddleGoods{
  117. {
  118. MIDDLEGOODSID: 2,
  119. GPLST: []TBGoodsGroup{
  120. {
  121. GOODSGROUPID: 1,
  122. GDLST: []TBGoods{
  123. {
  124. GOODSID: 1001,
  125. },
  126. },
  127. },
  128. },
  129. },
  130. },
  131. },
  132. {
  133. WRSTANDARDID: 2,
  134. },
  135. },
  136. },
  137. {
  138. AREAUSERID: 100,
  139. },
  140. },
  141. wantLen: 1,
  142. },
  143. }
  144. for _, tt := range tests {
  145. t.Run(tt.name, func(t *testing.T) {
  146. a := XHDeliveryGoods{}
  147. tt.args = a.filterSubEmpty(tt.args)
  148. if len(tt.args) != tt.wantLen {
  149. t.Errorf("%v result len:%v, want:%v", tt.name, len(tt.args), tt.wantLen)
  150. }
  151. })
  152. }
  153. }