MCPcopy
hub / github.com/netdata/netdata / TestConfigCache_Add

Function TestConfigCache_Add

src/go/plugin/framework/confgroup/cache_test.go:12–113  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

10)
11
12func TestConfigCache_Add(t *testing.T) {
13 tests := map[string]struct {
14 prepareGroups []Group
15 groups []Group
16 expectedAdd []Config
17 expectedRemove []Config
18 }{
19 "new group, new configs": {
20 groups: []Group{
21 prepareGroup("source", prepareCfg("name", "module")),
22 },
23 expectedAdd: []Config{
24 prepareCfg("name", "module"),
25 },
26 },
27 "several equal updates for the same group": {
28 groups: []Group{
29 prepareGroup("source", prepareCfg("name", "module")),
30 prepareGroup("source", prepareCfg("name", "module")),
31 prepareGroup("source", prepareCfg("name", "module")),
32 prepareGroup("source", prepareCfg("name", "module")),
33 prepareGroup("source", prepareCfg("name", "module")),
34 },
35 expectedAdd: []Config{
36 prepareCfg("name", "module"),
37 },
38 },
39 "empty group update for cached group": {
40 prepareGroups: []Group{
41 prepareGroup("source", prepareCfg("name1", "module"), prepareCfg("name2", "module")),
42 },
43 groups: []Group{
44 prepareGroup("source"),
45 },
46 expectedRemove: []Config{
47 prepareCfg("name1", "module"),
48 prepareCfg("name2", "module"),
49 },
50 },
51 "changed group update for cached group": {
52 prepareGroups: []Group{
53 prepareGroup("source", prepareCfg("name1", "module"), prepareCfg("name2", "module")),
54 },
55 groups: []Group{
56 prepareGroup("source", prepareCfg("name2", "module")),
57 },
58 expectedRemove: []Config{
59 prepareCfg("name1", "module"),
60 },
61 },
62 "empty group update for uncached group": {
63 groups: []Group{
64 prepareGroup("source"),
65 prepareGroup("source"),
66 },
67 },
68 "several updates with different source but same context": {
69 groups: []Group{

Callers

nothing calls this directly

Calls 6

AddMethod · 0.95
prepareGroupFunction · 0.85
prepareCfgFunction · 0.85
NewCacheFunction · 0.85
sortConfigsFunction · 0.85
RunMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…