MCPcopy Index your code
hub / github.com/apache/devlake / TestGetStringField

Function TestGetStringField

backend/plugins/customize/service/service_test.go:81–192  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

79}
80
81func TestGetStringField(t *testing.T) {
82 testCases := []struct {
83 name string
84 record map[string]interface{}
85 fieldName string
86 required bool
87 expectValue string
88 expectError bool
89 errorMsg string
90 }{
91 // Required field tests
92 {
93 name: "Required field exists and valid",
94 record: map[string]interface{}{"id": "123"},
95 fieldName: "id",
96 required: true,
97 expectValue: "123",
98 expectError: false,
99 },
100 {
101 name: "Required field exists but empty",
102 record: map[string]interface{}{"id": ""},
103 fieldName: "id",
104 required: true,
105 expectValue: "",
106 expectError: true,
107 errorMsg: "invalid or empty required field id",
108 },
109 {
110 name: "Required field exists but wrong type",
111 record: map[string]interface{}{"id": 123},
112 fieldName: "id",
113 required: true,
114 expectValue: "",
115 expectError: true,
116 errorMsg: "id is not a string",
117 },
118 {
119 name: "Required field missing",
120 record: map[string]interface{}{"name": "test"},
121 fieldName: "id",
122 required: true,
123 expectValue: "",
124 expectError: true,
125 errorMsg: "record without required field id",
126 },
127 {
128 name: "Required field nil",
129 record: map[string]interface{}{"id": nil},
130 fieldName: "id",
131 required: true,
132 expectValue: "",
133 expectError: true,
134 errorMsg: "record without required field id",
135 },
136 // Optional field tests
137 {
138 name: "Optional field exists and valid",

Callers

nothing calls this directly

Calls 3

RunMethod · 0.80
getStringFieldFunction · 0.70
ErrorMethod · 0.65

Tested by

no test coverage detected