From dfd5a9acc134f1ea849a49efee7dd7f50c836e75 Mon Sep 17 00:00:00 2001 From: Aleksandr Nogikh Date: Tue, 9 May 2023 18:25:02 +0200 Subject: dashboard: support filtering over multiple labels For each label, allow only one value to be specified. At the same time, allow multiple different labels (subsystem, origin, prio, etc) be specified together. --- pkg/html/html_test.go | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 pkg/html/html_test.go (limited to 'pkg/html/html_test.go') diff --git a/pkg/html/html_test.go b/pkg/html/html_test.go new file mode 100644 index 000000000..d824e0246 --- /dev/null +++ b/pkg/html/html_test.go @@ -0,0 +1,49 @@ +// Copyright 2023 syzkaller project authors. All rights reserved. +// Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. + +package html + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestDropParam(t *testing.T) { + tests := []struct { + in string + key string + value string + out string + }{ + { + in: `/upstream?first=a&second=b`, + key: `first`, + value: ``, + out: `/upstream?second=b`, + }, + { + in: `/upstream?first=a&first=b&second=c`, + key: `second`, + value: ``, + out: `/upstream?first=a&first=b`, + }, + { + in: `/upstream?first=a&first=b&second=c`, + key: `first`, + value: ``, + out: `/upstream?second=c`, + }, + { + in: `/upstream?first=a&first=b&second=c`, + key: `first`, + value: `b`, + out: `/upstream?first=a&second=c`, + }, + } + + for _, test := range tests { + got := DropParam(test.in, test.key, test.value) + assert.Equal(t, test.out, got) + } +} -- cgit mrf-deployment