mirror of
https://github.com/grafana/grafana.git
synced 2025-07-29 23:52:19 +08:00
57 lines
1.3 KiB
Go
57 lines
1.3 KiB
Go
package resource
|
|
|
|
import (
|
|
"context"
|
|
"encoding/json"
|
|
"fmt"
|
|
"os"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/require"
|
|
|
|
"github.com/grafana/grafana/pkg/storage/unified/resourcepb"
|
|
)
|
|
|
|
func TestStandardDocumentBuilder(t *testing.T) {
|
|
ctx := context.Background()
|
|
builder := StandardDocumentBuilder()
|
|
|
|
body, err := os.ReadFile("testdata/playlist-resource.json")
|
|
require.NoError(t, err)
|
|
doc, err := builder.BuildDocument(ctx, &resourcepb.ResourceKey{
|
|
Namespace: "default",
|
|
Group: "playlists.grafana.app",
|
|
Resource: "playlists",
|
|
Name: "test1",
|
|
}, 10, body)
|
|
require.NoError(t, err)
|
|
|
|
jj, _ := json.MarshalIndent(doc, "", " ")
|
|
fmt.Printf("%s\n", string(jj))
|
|
require.JSONEq(t, `{
|
|
"key": {
|
|
"namespace": "default",
|
|
"group": "playlists.grafana.app",
|
|
"resource": "playlists",
|
|
"name": "test1"
|
|
},
|
|
"name": "test1",
|
|
"rv": 10,
|
|
"title": "Test Playlist from Unified Storage",
|
|
"title_ngram": "Test Playlist from Unified Storage",
|
|
"title_phrase": "test playlist from unified storage",
|
|
"created": 1717236672000,
|
|
"createdBy": "user:ABC",
|
|
"updatedBy": "user:XYZ",
|
|
"manager": {
|
|
"kind": "repo",
|
|
"id": "something"
|
|
},
|
|
"managedBy": "repo:something",
|
|
"source": {
|
|
"path": "path/in/system.json",
|
|
"checksum": "xyz"
|
|
}
|
|
}`, string(jj))
|
|
}
|