Revision 1250b949
Added by Andreas Kohlbecker about 6 years ago
cdmlib-persistence/src/test/java/eu/etaxonomy/cdm/persistence/hibenate/permission/RegistrationVoterTest.java | ||
---|---|---|
39 | 39 |
Registration regREJECTED; |
40 | 40 |
|
41 | 41 |
String prep_ready = EnumSet.of(RegistrationStatus.PREPARATION,RegistrationStatus.READY).toString().replaceAll("[\\s\\]\\[]", ""); |
42 |
String prep = EnumSet.of(RegistrationStatus.PREPARATION,RegistrationStatus.READY).toString().replaceAll("[\\s\\]\\[]", ""); |
|
42 | 43 |
|
43 | 44 |
Authentication auth; |
44 | 45 |
|
... | ... | |
90 | 91 |
assertEquals(AccessDecisionVoter.ACCESS_DENIED, vote); |
91 | 92 |
} |
92 | 93 |
|
94 |
/** |
|
95 |
* see https://dev.e-taxonomy.eu/redmine/issues/7323 |
|
96 |
*/ |
|
97 |
@Test |
|
98 |
public void issue7323() { |
|
99 |
|
|
100 |
Registration regGranted = Registration.NewInstance(); |
|
101 |
regGranted.setStatus(RegistrationStatus.PREPARATION); |
|
102 |
|
|
103 |
Registration regRequired = Registration.NewInstance(); |
|
104 |
regRequired.setStatus(RegistrationStatus.PREPARATION); |
|
105 |
|
|
106 |
|
|
107 |
Authentication auth = authentication( |
|
108 |
new CdmAuthority(regGranted, prep, EnumSet.of(CRUD.UPDATE)) |
|
109 |
); |
|
110 |
int vote = voter.vote(auth, |
|
111 |
regRequired, |
|
112 |
// the attributes to test for |
|
113 |
Arrays.asList(new CdmAuthority(CdmPermissionClass.REGISTRATION, null, EnumSet.of(CRUD.UPDATE), regRequired.getUuid()))); |
|
114 |
assertEquals(AccessDecisionVoter.ACCESS_DENIED, vote); |
|
115 |
|
|
116 |
vote = voter.vote(auth, |
|
117 |
regGranted, |
|
118 |
// the attributes to test for |
|
119 |
Arrays.asList(new CdmAuthority(CdmPermissionClass.REGISTRATION, null, EnumSet.of(CRUD.UPDATE), regGranted.getUuid()))); |
|
120 |
assertEquals(AccessDecisionVoter.ACCESS_GRANTED, vote); |
|
121 |
} |
|
122 |
|
|
93 | 123 |
} |
Also available in: Unified diff
fix #7323 adding missing uuid match check in furtherVotingDescissions()