diff options
Diffstat (limited to 'sonar-core')
-rw-r--r-- | sonar-core/src/test/java/org/sonar/core/components/DefaultUserFinderTest.java | 63 | ||||
-rw-r--r-- | sonar-core/src/test/resources/org/sonar/core/components/DefaultUserFinderTest/fixture.xml | 6 |
2 files changed, 69 insertions, 0 deletions
diff --git a/sonar-core/src/test/java/org/sonar/core/components/DefaultUserFinderTest.java b/sonar-core/src/test/java/org/sonar/core/components/DefaultUserFinderTest.java new file mode 100644 index 00000000000..a944e3ae193 --- /dev/null +++ b/sonar-core/src/test/java/org/sonar/core/components/DefaultUserFinderTest.java @@ -0,0 +1,63 @@ +/* + * Sonar, open source software quality management tool. + * Copyright (C) 2008-2011 SonarSource + * mailto:contact AT sonarsource DOT com + * + * Sonar is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * Sonar is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with Sonar; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02 + */ +package org.sonar.core.components; + +import static org.hamcrest.Matchers.is; +import static org.hamcrest.Matchers.nullValue; +import static org.junit.Assert.assertThat; + +import org.junit.Before; +import org.junit.Test; +import org.sonar.api.database.model.User; +import org.sonar.api.security.UserFinder; +import org.sonar.jpa.test.AbstractDbUnitTestCase; + +public class DefaultUserFinderTest extends AbstractDbUnitTestCase { + + private UserFinder userFinder; + + @Before + public void setUp() { + setupData("fixture"); + userFinder = new DefaultUserFinder(getSessionFactory()); + } + + @Test + public void shouldFindUserByLogin() { + User user = userFinder.findByLogin("simon"); + assertThat(user.getId(), is(1)); + assertThat(user.getLogin(), is("simon")); + assertThat(user.getName(), is("Simon Brandhof")); + assertThat(user.getEmail(), is("simon.brandhof@sonarsource.com")); + + user = userFinder.findByLogin("godin"); + assertThat(user.getId(), is(2)); + assertThat(user.getLogin(), is("godin")); + assertThat(user.getName(), is("Evgeny Mandrikov")); + assertThat(user.getEmail(), is("evgeny.mandrikov@sonarsource.com")); + } + + @Test + public void userNotExists() { + User user = userFinder.findByLogin("user"); + assertThat(user, nullValue()); + } + +} diff --git a/sonar-core/src/test/resources/org/sonar/core/components/DefaultUserFinderTest/fixture.xml b/sonar-core/src/test/resources/org/sonar/core/components/DefaultUserFinderTest/fixture.xml new file mode 100644 index 00000000000..456f9305802 --- /dev/null +++ b/sonar-core/src/test/resources/org/sonar/core/components/DefaultUserFinderTest/fixture.xml @@ -0,0 +1,6 @@ +<dataset> + + <users id="1" login="simon" name="Simon Brandhof" email="simon.brandhof@sonarsource.com" /> + <users id="2" login="godin" name="Evgeny Mandrikov" email="evgeny.mandrikov@sonarsource.com" /> + +</dataset>
\ No newline at end of file |