MCPcopy Index your code
hub / github.com/dgraph-io/dgraph / TestAddUpdateGroupWithDuplicateRules

Method TestAddUpdateGroupWithDuplicateRules

acl/acl_test.go:2584–2652  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

2582}
2583
2584func (asuite *AclTestSuite) TestAddUpdateGroupWithDuplicateRules() {
2585 t := asuite.T()
2586
2587 hc, err := asuite.dc.HTTPClient()
2588 require.NoError(t, err)
2589 require.NoError(t, hc.LoginIntoNamespace(dgraphapi.DefaultUser,
2590 dgraphapi.DefaultPassword, x.RootNamespace))
2591
2592 groupName := "testGroup"
2593 addedRules := []dgraphapi.AclRule{
2594 {
2595 Predicate: "test",
2596 Permission: 1,
2597 },
2598 {
2599 Predicate: "test",
2600 Permission: 2,
2601 },
2602 {
2603 Predicate: "test1",
2604 Permission: 3,
2605 },
2606 }
2607
2608 addedGroup, err := hc.CreateGroupWithRules(groupName, addedRules)
2609 require.NoError(t, err)
2610
2611 require.Equal(t, groupName, addedGroup.Name)
2612 require.Len(t, addedGroup.Rules, 2)
2613 require.ElementsMatch(t, addedRules[1:], addedGroup.Rules)
2614
2615 asuite.Upgrade()
2616
2617 hc, err = asuite.dc.HTTPClient()
2618 require.NoError(t, err)
2619 require.NoError(t, hc.LoginIntoNamespace(dgraphapi.DefaultUser,
2620 dgraphapi.DefaultPassword, x.RootNamespace))
2621 updatedRules := []dgraphapi.AclRule{
2622 {
2623 Predicate: "test",
2624 Permission: 3,
2625 },
2626 {
2627 Predicate: "test2",
2628 Permission: 1,
2629 },
2630 {
2631 Predicate: "test2",
2632 Permission: 2,
2633 },
2634 }
2635 updatedGroup, err := hc.UpdateGroup(groupName, updatedRules, nil)
2636 require.NoError(t, err)
2637 require.Equal(t, groupName, updatedGroup.Name)
2638 require.Len(t, updatedGroup.Rules, 3)
2639 require.ElementsMatch(t, []dgraphapi.AclRule{updatedRules[0], addedRules[2], updatedRules[2]},
2640 updatedGroup.Rules)
2641

Callers

nothing calls this directly

Calls 7

UpgradeMethod · 0.95
LoginIntoNamespaceMethod · 0.80
CreateGroupWithRulesMethod · 0.80
UpdateGroupMethod · 0.80
DeleteGroupMethod · 0.80
HTTPClientMethod · 0.65
LenMethod · 0.65

Tested by

no test coverage detected