Live: pipeline rule crud (file-based, still for MVP) (#39238)

This commit is contained in:
Alexander Emelin
2021-09-30 19:29:32 +03:00
committed by GitHub
parent 3ad5ee87a3
commit a696fc8b2b
9 changed files with 424 additions and 95 deletions
@@ -21,8 +21,14 @@ func (t *testBuilder) BuildRules(_ context.Context, _ int64) ([]*LiveChannelRule
Pattern: "stream/telegraf/:metric",
},
{
OrgId: 1,
Pattern: "stream/telegraf/:metric/:extra",
OrgId: 1,
Pattern: "stream/telegraf/:metric/:extra",
Outputter: NewRedirectOutput(RedirectOutputConfig{}),
},
{
OrgId: 1,
Pattern: "stream/boom:er",
Converter: NewExactJsonConverter(ExactJsonConverterConfig{}),
},
}, nil
}
@@ -42,7 +48,12 @@ func TestStorage_Get(t *testing.T) {
rule, ok, err = s.Get(1, "stream/telegraf/mem/rss")
require.NoError(t, err)
require.True(t, ok)
require.Nil(t, rule.Converter)
require.Equal(t, OutputTypeRedirect, rule.Outputter.Type())
rule, ok, err = s.Get(1, "stream/booms")
require.NoError(t, err)
require.True(t, ok)
require.Equal(t, ConverterTypeJsonExact, rule.Converter.Type())
}
func BenchmarkRuleGet(b *testing.B) {