github.com/Jeffail/benthos/v3@v3.65.0/internal/impl/nats/output_jetstream_test.go (about) 1 package nats 2 3 import ( 4 "testing" 5 6 "github.com/Jeffail/benthos/v3/public/service" 7 "github.com/stretchr/testify/assert" 8 "github.com/stretchr/testify/require" 9 ) 10 11 func TestOutputJetStreamConfigParse(t *testing.T) { 12 spec := natsJetStreamOutputConfig() 13 env := service.NewEnvironment() 14 15 outputConfig := ` 16 urls: [ url1, url2 ] 17 subject: testsubject 18 auth: 19 nkey_file: test auth n key file 20 user_credentials_file: test auth user creds file 21 ` 22 23 conf, err := spec.ParseYAML(outputConfig, env) 24 require.NoError(t, err) 25 26 e, err := newJetStreamWriterFromConfig(conf, nil) 27 require.NoError(t, err) 28 29 assert.Equal(t, "url1,url2", e.urls) 30 assert.Equal(t, "testsubject", e.subjectStr.String(service.NewMessage(nil))) 31 assert.Equal(t, "test auth n key file", e.authConf.NKeyFile) 32 assert.Equal(t, "test auth user creds file", e.authConf.UserCredentialsFile) 33 }