diff options
author | James Moger <james.moger@gitblit.com> | 2014-03-04 17:29:02 -0500 |
---|---|---|
committer | James Moger <james.moger@gitblit.com> | 2014-03-04 17:29:02 -0500 |
commit | 9aa11943f821cb6c10a6d1c41c3d2381676f5047 (patch) | |
tree | eb0ccbf23d501d1afc814098cf2eccc747ec2f67 /src/test | |
parent | 2f1ab22c0828d313c6762413751697097e17b64e (diff) | |
download | gitblit-9aa11943f821cb6c10a6d1c41c3d2381676f5047.tar.gz gitblit-9aa11943f821cb6c10a6d1c41c3d2381676f5047.zip |
Implement user "disabled" flag as an alternative to deleting the account
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/java/com/gitblit/tests/AuthenticationManagerTest.java | 66 | ||||
-rw-r--r-- | src/test/java/com/gitblit/tests/GitBlitSuite.java | 2 |
2 files changed, 67 insertions, 1 deletions
diff --git a/src/test/java/com/gitblit/tests/AuthenticationManagerTest.java b/src/test/java/com/gitblit/tests/AuthenticationManagerTest.java new file mode 100644 index 00000000..84a2b749 --- /dev/null +++ b/src/test/java/com/gitblit/tests/AuthenticationManagerTest.java @@ -0,0 +1,66 @@ +/* + * Copyright 2013 gitblit.com. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package com.gitblit.tests; + +import java.util.HashMap; + +import org.junit.Test; + +import com.gitblit.manager.AuthenticationManager; +import com.gitblit.manager.IAuthenticationManager; +import com.gitblit.manager.IUserManager; +import com.gitblit.manager.RuntimeManager; +import com.gitblit.manager.UserManager; +import com.gitblit.models.UserModel; +import com.gitblit.tests.mock.MemorySettings; + +/** + * Class for testing local authentication. + * + * @author James Moger + * + */ +public class AuthenticationManagerTest extends GitblitUnitTest { + + IUserManager users; + + MemorySettings getSettings() { + return new MemorySettings(new HashMap<String, Object>()); + } + + IAuthenticationManager newAuthenticationManager() { + RuntimeManager runtime = new RuntimeManager(getSettings(), GitBlitSuite.BASEFOLDER).start(); + users = new UserManager(runtime).start(); + AuthenticationManager auth = new AuthenticationManager(runtime, users).start(); + return auth; + } + + @Test + public void testAuthenticate() throws Exception { + IAuthenticationManager auth = newAuthenticationManager(); + + UserModel user = new UserModel("sunnyjim"); + user.password = "password"; + users.updateUserModel(user); + + assertNotNull(auth.authenticate(user.username, user.password.toCharArray())); + user.disabled = true; + + users.updateUserModel(user); + assertNull(auth.authenticate(user.username, user.password.toCharArray())); + users.deleteUserModel(user); + } +} diff --git a/src/test/java/com/gitblit/tests/GitBlitSuite.java b/src/test/java/com/gitblit/tests/GitBlitSuite.java index cba575d7..c015c847 100644 --- a/src/test/java/com/gitblit/tests/GitBlitSuite.java +++ b/src/test/java/com/gitblit/tests/GitBlitSuite.java @@ -64,7 +64,7 @@ import com.gitblit.utils.JGitUtils; GroovyScriptTest.class, LuceneExecutorTest.class, RepositoryModelTest.class,
FanoutServiceTest.class, Issue0259Test.class, Issue0271Test.class, HtpasswdAuthenticationTest.class,
ModelUtilsTest.class, JnaUtilsTest.class, LdapSyncServiceTest.class, FileTicketServiceTest.class, - BranchTicketServiceTest.class, RedisTicketServiceTest.class }) + BranchTicketServiceTest.class, RedisTicketServiceTest.class, AuthenticationManagerTest.class }) public class GitBlitSuite {
public static final File BASEFOLDER = new File("data");
|