Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
佳 邓
Gitlab4j Api
Commits
e48dace9
Commit
e48dace9
authored
Nov 05, 2017
by
Greg Messner
Browse files
Added tests for impersonation tokens (#91).
parent
f4546228
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/test/java/org/gitlab4j/api/TestUserApi.java
View file @
e48dace9
package
org.gitlab4j.api
;
import
static
org
.
junit
.
Assert
.
assertEquals
;
import
static
org
.
junit
.
Assert
.
assertFalse
;
import
static
org
.
junit
.
Assert
.
assertNotNull
;
import
static
org
.
junit
.
Assert
.
assertNull
;
import
static
org
.
junit
.
Assert
.
assertTrue
;
import
static
org
.
junit
.
Assume
.
assumeTrue
;
import
java.text.ParseException
;
import
java.util.Date
;
import
java.util.List
;
import
org.gitlab4j.api.GitLabApi.ApiVersion
;
import
org.gitlab4j.api.models.ImpersonationToken
;
import
org.gitlab4j.api.models.ImpersonationToken.Scope
;
import
org.gitlab4j.api.models.User
;
import
org.gitlab4j.api.models.Version
;
import
org.gitlab4j.api.utils.ISO8601
;
import
org.junit.Before
;
import
org.junit.BeforeClass
;
import
org.junit.Test
;
...
...
@@ -40,6 +49,8 @@ public class TestUserApi {
TEST_SUDO_AS_USERNAME
=
TestUtils
.
getProperty
(
"TEST_SUDO_AS_USERNAME"
);
}
private
static
final
String
TEST_IMPERSONATION_TOKEN_NAME
=
"token1"
;
private
static
GitLabApi
gitLabApi
;
public
TestUserApi
()
{
...
...
@@ -128,4 +139,60 @@ public class TestUserApi {
gitLabApi
.
unsudo
();
}
}
@Test
public
void
testCreateImpersonationToken
()
throws
GitLabApiException
,
ParseException
{
User
user
=
gitLabApi
.
getUserApi
().
getCurrentUser
();
Scope
[]
scopes
=
{
Scope
.
API
,
Scope
.
READ_USER
};
Date
expiresAt
=
ISO8601
.
toDate
(
"2018-01-01T00:00:00Z"
);
ImpersonationToken
token
=
gitLabApi
.
getUserApi
().
createImpersonationToken
(
user
.
getId
(),
TEST_IMPERSONATION_TOKEN_NAME
,
expiresAt
,
scopes
);
assertNotNull
(
token
);
assertNotNull
(
token
.
getId
());
assertEquals
(
TEST_IMPERSONATION_TOKEN_NAME
,
token
.
getName
());
assertEquals
(
2
,
token
.
getScopes
().
size
());
gitLabApi
.
getUserApi
().
deleteImpersonationToken
(
user
.
getId
(),
token
.
getId
());
}
@Test
public
void
testGetImpersonationTokens
()
throws
GitLabApiException
,
ParseException
{
User
user
=
gitLabApi
.
getUserApi
().
getCurrentUser
();
Scope
[]
scopes
=
{
Scope
.
API
,
Scope
.
READ_USER
};
Date
expiresAt
=
ISO8601
.
toDate
(
"2018-01-01T00:00:00Z"
);
ImpersonationToken
createdToken
=
gitLabApi
.
getUserApi
().
createImpersonationToken
(
user
.
getId
(),
TEST_IMPERSONATION_TOKEN_NAME
,
expiresAt
,
scopes
);
assertNotNull
(
createdToken
);
ImpersonationToken
token
=
gitLabApi
.
getUserApi
().
getImpersonationToken
(
user
.
getId
(),
createdToken
.
getId
());
assertNotNull
(
token
);
assertEquals
(
createdToken
.
getId
(),
token
.
getId
());
assertEquals
(
TEST_IMPERSONATION_TOKEN_NAME
,
token
.
getName
());
assertEquals
(
createdToken
.
getExpiresAt
(),
token
.
getExpiresAt
());
List
<
ImpersonationToken
>
tokens
=
gitLabApi
.
getUserApi
().
getImpersonationTokens
(
user
.
getId
());
assertNotNull
(
tokens
);
assertTrue
(
tokens
.
size
()
>
0
);
gitLabApi
.
getUserApi
().
deleteImpersonationToken
(
user
.
getId
(),
createdToken
.
getId
());
}
@Test
public
void
testDeleteImpersonationTokens
()
throws
GitLabApiException
,
ParseException
{
User
user
=
gitLabApi
.
getUserApi
().
getCurrentUser
();
Scope
[]
scopes
=
{
Scope
.
API
,
Scope
.
READ_USER
};
Date
expiresAt
=
ISO8601
.
toDate
(
"2018-01-01T00:00:00Z"
);
ImpersonationToken
createdToken
=
gitLabApi
.
getUserApi
().
createImpersonationToken
(
user
.
getId
(),
TEST_IMPERSONATION_TOKEN_NAME
,
expiresAt
,
scopes
);
assertNotNull
(
createdToken
);
ImpersonationToken
token
=
gitLabApi
.
getUserApi
().
getImpersonationToken
(
user
.
getId
(),
createdToken
.
getId
());
assertNotNull
(
token
);
assertEquals
(
createdToken
.
getId
(),
token
.
getId
());
assertTrue
(
token
.
getActive
());
gitLabApi
.
getUserApi
().
deleteImpersonationToken
(
user
.
getId
(),
createdToken
.
getId
());
token
=
gitLabApi
.
getUserApi
().
getImpersonationToken
(
user
.
getId
(),
createdToken
.
getId
());
assertFalse
(
token
.
getActive
());
}
}
Write
Preview
Supports
Markdown
0%
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!
Cancel
Please
register
or
sign in
to comment