()
| 2582 | } |
| 2583 | |
| 2584 | func (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 |
nothing calls this directly
no test coverage detected