Skip to content

Commit d0e36ce

Browse files
Merge pull request #454 from tinedel/issue-438-trailing-comma-bug
ignore empty string class name when building dataflow metadata
2 parents 195d981 + 731ef6c commit d0e36ce

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

boot/configuration_metadata.go

+5-1
Original file line numberDiff line numberDiff line change
@@ -160,7 +160,11 @@ func NewDataFlowConfigurationMetadata(path string, metadata ConfigurationMetadat
160160

161161
var classes []string
162162
for _, s := range strings.Split(s, ",") {
163-
classes = append(classes, strings.TrimSpace(s))
163+
class := strings.TrimSpace(s)
164+
if class == "" {
165+
continue
166+
}
167+
classes = append(classes, class)
164168
}
165169

166170
m := ConfigurationMetadata{}

boot/configuration_metadata_test.go

+15
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,21 @@ func testConfigurationMetadata(t *testing.T, context spec.G, it spec.S) {
7777
}))
7878
})
7979

80+
it("returns dataflow decoded contents handling trailing comma correctly", func() {
81+
Expect(os.MkdirAll(filepath.Join(path, "META-INF"), 0755)).To(Succeed())
82+
Expect(ioutil.WriteFile(filepath.Join(path, "META-INF", "spring-configuration-metadata.json"),
83+
[]byte(`{ "properties": [ { "name": "alpha", "sourceType": "alpha" }, { "name": "beta" } ] }`), 0644))
84+
Expect(ioutil.WriteFile(filepath.Join(path, "META-INF", "dataflow-configuration-metadata.properties"),
85+
[]byte("configuration-properties.classes=alpha,"), 0644))
86+
87+
cm, err := boot.NewConfigurationMetadataFromPath(path)
88+
Expect(err).NotTo(HaveOccurred())
89+
90+
Expect(boot.NewDataFlowConfigurationMetadata(path, cm)).To(Equal(boot.ConfigurationMetadata{
91+
Properties: []boot.Property{{Name: "alpha", SourceType: "alpha"}},
92+
}))
93+
})
94+
8095
it("returns dataflow decoded contents", func() {
8196
Expect(os.MkdirAll(filepath.Join(path, "META-INF"), 0755)).To(Succeed())
8297
Expect(ioutil.WriteFile(filepath.Join(path, "META-INF", "spring-configuration-metadata.json"),

0 commit comments

Comments
 (0)