From b636cc87acc286c93a899a9c66c441a7e19f349b Mon Sep 17 00:00:00 2001 From: Artem Glazychev Date: Thu, 4 May 2023 13:10:35 +0700 Subject: [PATCH] Ability to parse the configuration without additional parameters Signed-off-by: Artem Glazychev --- internal/config/config.go | 2 +- internal/config/config_test.go | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/internal/config/config.go b/internal/config/config.go index 28cb226..fdfb9ed 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -83,7 +83,7 @@ func (s *ServiceConfig) UnmarshalBinary(bytes []byte) (err error) { split = strings.Split(text, "{") if len(split) < 2 { - return errors.Errorf("invalid format: %s", text) + return s.validate() } split = strings.Split(split[1], "}") diff --git a/internal/config/config_test.go b/internal/config/config_test.go index dade176..e76f1af 100644 --- a/internal/config/config_test.go +++ b/internal/config/config_test.go @@ -45,4 +45,12 @@ func TestServiceConfig_UnmarshalBinary(t *testing.T) { Name: "pingpong", VLANTag: 1111, }, cfg) + + cfg = new(config.ServiceConfig) + err = cfg.UnmarshalBinary([]byte("pingpong")) + require.NoError(t, err) + + require.Equal(t, &config.ServiceConfig{ + Name: "pingpong", + }, cfg) }