Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
A
ac
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
GitLab community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
OATS-CADC
ac
Commits
619d1774
Commit
619d1774
authored
9 years ago
by
Jeff Burke
Browse files
Options
Downloads
Patches
Plain Diff
t73024: added unit-test to try adding an existing user to userRequests
parent
eaab184d
Branches
Branches containing commit
Tags
Tags containing commit
No related merge requests found
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
cadcAccessControl-Server/test/src/ca/nrc/cadc/ac/server/ldap/LdapUserDAOTest.java
+52
-59
52 additions, 59 deletions
.../test/src/ca/nrc/cadc/ac/server/ldap/LdapUserDAOTest.java
with
52 additions
and
59 deletions
cadcAccessControl-Server/test/src/ca/nrc/cadc/ac/server/ldap/LdapUserDAOTest.java
+
52
−
59
View file @
619d1774
...
@@ -131,52 +131,6 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
...
@@ -131,52 +131,6 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
catch
(
IllegalArgumentException
expected
)
{}
catch
(
IllegalArgumentException
expected
)
{}
}
}
/**
* Test of addUser method, of class LdapUserDAO.
*/
@Test
public
void
testAddUserRequest
()
throws
Exception
{
// add user using HttpPrincipal
String
username
=
createUsername
();
final
HttpPrincipal
userID
=
new
HttpPrincipal
(
username
);
final
User
testUser
=
new
User
();
testUser
.
getIdentities
().
add
(
userID
);
testUser
.
personalDetails
=
new
PersonalDetails
(
"foo"
,
"bar"
);
testUser
.
personalDetails
.
email
=
username
+
"@canada.ca"
;
final
UserRequest
userRequest
=
new
UserRequest
(
testUser
,
"password"
.
toCharArray
());
DNPrincipal
dnPrincipal
=
new
DNPrincipal
(
"uid="
+
username
+
","
+
config
.
getUsersDN
());
Subject
subject
=
new
Subject
();
subject
.
getPrincipals
().
add
(
dnPrincipal
);
// do everything as owner
Subject
.
doAs
(
subject
,
new
PrivilegedExceptionAction
<
Object
>()
{
public
Object
run
()
throws
Exception
{
try
{
final
LdapUserDAO
userDAO
=
getUserDAO
();
userDAO
.
addUserRequest
(
userRequest
);
final
User
actual
=
userDAO
.
getUserRequest
(
userID
);
check
(
testUser
,
actual
);
return
null
;
}
catch
(
Exception
e
)
{
throw
new
Exception
(
"Problems"
,
e
);
}
}
});
}
@Test
@Test
public
void
testAddUser
()
throws
Exception
public
void
testAddUser
()
throws
Exception
{
{
...
@@ -220,23 +174,23 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
...
@@ -220,23 +174,23 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
* Test of addUserRequest method, of class LdapUserDAO.
* Test of addUserRequest method, of class LdapUserDAO.
*/
*/
@Test
@Test
public
void
testAdd
PendingUser
()
throws
Exception
public
void
testAdd
UserRequest
()
throws
Exception
{
{
// add user using HttpPrincipal
// add user using HttpPrincipal
final
String
username
=
createUsername
();
final
String
username
=
createUsername
();
final
HttpPrincipal
userID
=
new
HttpPrincipal
(
username
);
final
HttpPrincipal
userID
=
new
HttpPrincipal
(
username
);
final
User
httpE
xpected
=
new
User
();
final
User
e
xpected
User
=
new
User
();
httpE
xpected
.
getIdentities
().
add
(
userID
);
e
xpected
User
.
getIdentities
().
add
(
userID
);
PersonalDetails
pd
=
new
PersonalDetails
(
"foo"
,
"bar"
);
expectedUser
.
personalDetails
=
new
PersonalDetails
(
"foo"
,
"bar"
);
pd
.
email
=
username
+
"@canada.ca"
;
expectedUser
.
personalDetails
.
email
=
username
+
"@canada.ca"
;
httpExpected
.
personalDetails
=
pd
;
UserRequest
userRequest
=
new
UserRequest
(
httpE
xpected
,
"123456"
.
toCharArray
());
UserRequest
userRequest
=
new
UserRequest
(
e
xpected
User
,
"123456"
.
toCharArray
());
final
LdapUserDAO
httpUserDAO
=
getUserDAO
();
// Adding a new user is done anonymously
httpUserDAO
.
addUserRequest
(
userRequest
);
final
LdapUserDAO
userDAO
=
getUserDAO
();
userDAO
.
addUserRequest
(
userRequest
);
DNPrincipal
dnPrincipal
=
new
DNPrincipal
(
"uid="
+
username
+
","
+
config
.
getUserRequestsDN
());
DNPrincipal
dnPrincipal
=
new
DNPrincipal
(
"uid="
+
username
+
","
+
config
.
getUserRequestsDN
());
Subject
subject
=
new
Subject
();
Subject
subject
=
new
Subject
();
...
@@ -250,8 +204,8 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
...
@@ -250,8 +204,8 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
{
{
try
try
{
{
final
User
actual
=
httpU
serDAO
.
getUserRequest
(
userID
);
final
User
actual
User
=
u
serDAO
.
getUserRequest
(
userID
);
check
(
httpE
xpected
,
actual
);
check
(
e
xpected
User
,
actual
User
);
return
null
;
return
null
;
}
}
...
@@ -261,9 +215,48 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
...
@@ -261,9 +215,48 @@ public class LdapUserDAOTest extends AbstractLdapDAOTest
}
}
}
}
});
});
// try and add another user with the same username
final
User
dupUsername
=
new
User
();
dupUsername
.
getIdentities
().
add
(
userID
);
dupUsername
.
personalDetails
=
new
PersonalDetails
(
"foo"
,
"bar"
);
dupUsername
.
personalDetails
.
email
=
username
+
"@foo.com"
;
UserRequest
dupUsernameRequest
=
new
UserRequest
(
dupUsername
,
"123456"
.
toCharArray
());
try
{
userDAO
.
addUserRequest
(
dupUsernameRequest
);
fail
(
"adding a duplicate user should throw a UserAlreadyExistsException"
);
}
catch
(
UserAlreadyExistsException
expected
)
{
log
.
debug
(
"expected exception: "
+
expected
.
getMessage
());
}
}
// TODO testAddUser for an existing user
// try and add another user with the same email address
final
String
username2
=
createUsername
();
final
HttpPrincipal
userID2
=
new
HttpPrincipal
(
username
);
final
User
dupEmail
=
new
User
();
dupEmail
.
getIdentities
().
add
(
userID2
);
dupEmail
.
personalDetails
=
new
PersonalDetails
(
"foo"
,
"bar"
);
dupEmail
.
personalDetails
.
email
=
username
+
"@canada.ca"
;
UserRequest
dupEmailRequest
=
new
UserRequest
(
dupEmail
,
"123456"
.
toCharArray
());
try
{
userDAO
.
addUserRequest
(
dupEmailRequest
);
fail
(
"adding a user with an existing email address should throw a UserAlreadyExistsException"
);
}
catch
(
UserAlreadyExistsException
expected
)
{
log
.
debug
(
"expected exception: "
+
expected
.
getMessage
());
}
}
/**
/**
* Test of getUser method, of class LdapUserDAO.
* Test of getUser method, of class LdapUserDAO.
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment