blob: fef04d0ab761987a985bcf109f90073fc787c753 [file] [log] [blame]
package tracestore
import (
"testing"
"github.com/stretchr/testify/require"
"go.skia.org/infra/go/paramtools"
"go.skia.org/infra/go/testutils/unittest"
"go.skia.org/infra/go/tiling"
"go.skia.org/infra/golden/go/types"
)
func TestTraceIDFromParams(t *testing.T) {
unittest.SmallTest(t)
input := paramtools.Params{
"cpu": "x86",
"gpu": "nVidia",
types.PRIMARY_KEY_FIELD: "test_alpha",
types.CORPUS_FIELD: "dm",
}
expected := tiling.TraceID(",cpu=x86,gpu=nVidia,name=test_alpha,source_type=dm,")
require.Equal(t, expected, TraceIDFromParams(input))
}
// TestTraceIDFromParamsMalicious adds some values with invalid chars.
func TestTraceIDFromParamsMalicious(t *testing.T) {
unittest.SmallTest(t)
input := paramtools.Params{
"c=p,u": `"x86"`,
"gpu": "nVi,,=dia",
types.PRIMARY_KEY_FIELD: "test=alpha",
types.CORPUS_FIELD: "dm!",
}
expected := tiling.TraceID(`,c_p_u="x86",gpu=nVi___dia,name=test_alpha,source_type=dm!,`)
require.Equal(t, expected, TraceIDFromParams(input))
}