diff options
Diffstat (limited to 'org.eclipse.mylyn.reviews.r4e.ui.tests/src/org/eclipse/mylyn/reviews/r4e/ui/tests/feature/ReviewWithStrangeCharTest.java')
-rw-r--r-- | org.eclipse.mylyn.reviews.r4e.ui.tests/src/org/eclipse/mylyn/reviews/r4e/ui/tests/feature/ReviewWithStrangeCharTest.java | 202 |
1 files changed, 202 insertions, 0 deletions
diff --git a/org.eclipse.mylyn.reviews.r4e.ui.tests/src/org/eclipse/mylyn/reviews/r4e/ui/tests/feature/ReviewWithStrangeCharTest.java b/org.eclipse.mylyn.reviews.r4e.ui.tests/src/org/eclipse/mylyn/reviews/r4e/ui/tests/feature/ReviewWithStrangeCharTest.java new file mode 100644 index 00000000..a83f8979 --- /dev/null +++ b/org.eclipse.mylyn.reviews.r4e.ui.tests/src/org/eclipse/mylyn/reviews/r4e/ui/tests/feature/ReviewWithStrangeCharTest.java @@ -0,0 +1,202 @@ +/******************************************************************************* + * Copyright (c) 2012 Ericsson Research Canada + * + * All rights reserved. This program and the accompanying materials are + * made available under the terms of the Eclipse Public License v1.0 which + * accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Description: + * + * This class implements a JUnit Test Case when creating a review with + * non-alpha-numeric char or spaces in the review group and review name. + * + * Contributors: + * Jacques Bouthillier - Created for Mylyn Review R4E project + * Francois Chouinard - Add identifying message to each assert + ******************************************************************************/ + +package org.eclipse.mylyn.reviews.r4e.ui.tests.feature; + +import java.io.File; + +import junit.framework.Test; +import junit.framework.TestCase; +import junit.framework.TestSuite; + +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.Path; +import org.eclipse.mylyn.reviews.r4e.ui.internal.model.R4EUIModelController; +import org.eclipse.mylyn.reviews.r4e.ui.internal.model.R4EUIReviewBasic; +import org.eclipse.mylyn.reviews.r4e.ui.internal.model.R4EUIReviewGroup; +import org.eclipse.mylyn.reviews.r4e.ui.internal.navigator.ReviewNavigatorActionGroup; +import org.eclipse.mylyn.reviews.r4e.ui.tests.R4ETestSetup; +import org.eclipse.mylyn.reviews.r4e.ui.tests.proxy.R4EUITestMain; +import org.eclipse.mylyn.reviews.r4e.ui.tests.utils.R4EAssert; +import org.eclipse.mylyn.reviews.r4e.ui.tests.utils.TestConstants; +import org.eclipse.mylyn.reviews.r4e.ui.tests.utils.TestUtils; +import org.junit.After; +import org.junit.Before; + +/** + * @author Jacques Bouthillier + * @version $Revision: 1.0 $ + */ +@SuppressWarnings({ "restriction", "nls" }) +public class ReviewWithStrangeCharTest extends TestCase { + + // ------------------------------------------------------------------------ + // Member variables + // ------------------------------------------------------------------------ + + private R4EUITestMain fProxy = null; + + private R4EUIReviewGroup fGroup = null; + + private R4EUIReviewBasic fReview = null; + + // ------------------------------------------------------------------------ + // Housekeeping + // ------------------------------------------------------------------------ + + /** + * Method suite - Sets up the global test environment, if not already done at the suite level. + * + * @return Test + */ + public static Test suite() { + TestSuite suite = new TestSuite(); + suite.addTestSuite(ReviewWithStrangeCharTest.class); + return new R4ETestSetup(suite); + } + + /** + * Method setUp - Sets up the fixture, for example, open a network connection. This method is called before a test + * is executed. + * + * @throws java.lang.Exception + */ + @Before + @Override + public void setUp() throws Exception { + fProxy = R4EUITestMain.getInstance(); + createReviewGroups(); + if (((ReviewNavigatorActionGroup) R4EUIModelController.getNavigatorView().getActionSet()).isHideDeltasFilterSet()) { + fProxy.getCommandProxy().toggleHideDeltasFilter(); + } + createReviews(); + } + + /** + * Method tearDown + * + * @throws java.lang.Exception + */ + @After + @Override + public void tearDown() throws Exception { + fProxy = null; + } + + // ------------------------------------------------------------------------ + // Main test case (pretty light...) + // ------------------------------------------------------------------------ + + /** + * Method testUseStrangeCharInGroupReview + * + * @throws CoreException + */ + public void testUseStrangeCharInGroupReview() throws CoreException { + TestUtils.waitForJobs(); + } + + // ------------------------------------------------------------------------ + // helper functions + // ------------------------------------------------------------------------ + + /** + * Method createReviewGroups + */ + private void createReviewGroups() { + + // Assert object + R4EAssert r4eAssert = new R4EAssert("createReviewGroups"); + + fGroup = null; + + // Create Review Group + r4eAssert.setTest("Create Review Group"); + for (R4EUIReviewGroup group : R4EUIModelController.getRootElement().getGroups()) { + if (group.getReviewGroup().getName().equals(TestConstants.REVIEW_GROUP_TEST_NAME_STRANGE)) { + fGroup = group; + group.getName(); + break; + } + } + if (null == fGroup) { + fGroup = fProxy.getReviewGroupProxy().createReviewGroup( + TestUtils.FSharedFolder + File.separator + TestConstants.REVIEW_GROUP_TEST_NAME_STRANGE, + TestConstants.REVIEW_GROUP_TEST_NAME_STRANGE, TestConstants.REVIEW_GROUP_TEST_DESCRIPTION, + TestConstants.REVIEW_GROUP_TEST_ENTRY_CRITERIA, TestConstants.REVIEW_GROUP_TEST_AVAILABLE_PROJECTS, + TestConstants.REVIEW_GROUP_TEST_AVAILABLE_COMPONENTS, new String[0]); + r4eAssert.assertNotNull(fGroup); + r4eAssert.assertEquals(TestConstants.REVIEW_GROUP_TEST_NAME_STRANGE, fGroup.getReviewGroup().getName()); + r4eAssert.assertEquals(new Path(TestUtils.FSharedFolder).toPortableString() + "/" //$NON-NLS-1$ + + TestConstants.REVIEW_GROUP_TEST_NAME_STRANGE, fGroup.getReviewGroup().getFolder()); + r4eAssert.assertEquals(TestConstants.REVIEW_GROUP_TEST_DESCRIPTION, fGroup.getReviewGroup() + .getDescription()); + r4eAssert.assertEquals(TestConstants.REVIEW_GROUP_TEST_ENTRY_CRITERIA, fGroup.getReviewGroup() + .getDefaultEntryCriteria()); + for (int i = 0; i < TestConstants.REVIEW_GROUP_TEST_AVAILABLE_PROJECTS.length; i++) { + r4eAssert.assertEquals(TestConstants.REVIEW_GROUP_TEST_AVAILABLE_PROJECTS[i], fGroup.getReviewGroup() + .getAvailableProjects() + .get(i)); + } + for (int i = 0; i < TestConstants.REVIEW_GROUP_TEST_AVAILABLE_COMPONENTS.length; i++) { + r4eAssert.assertEquals(TestConstants.REVIEW_GROUP_TEST_AVAILABLE_COMPONENTS[i], fGroup.getReviewGroup() + .getAvailableComponents() + .get(i)); + } + fGroup.getName(); + } + } + + /** + * Method createReviews + */ + private void createReviews() { + + // Assert object + R4EAssert r4eAssert = new R4EAssert("createReviews"); + + r4eAssert.setTest("Open Review Group"); + if (!fGroup.isOpen()) { + fProxy.getCommandProxy().openElement(fGroup); + } + r4eAssert.assertTrue(fGroup.isOpen()); + + r4eAssert.setTest("Create Review"); + fReview = fProxy.getReviewProxy().createReview(fGroup, TestConstants.REVIEW_TEST_TYPE_INFORMAL, + TestConstants.REVIEW_STRANGE_NAME_INF, TestConstants.REVIEW_TEST_DESCRIPTION, + TestConstants.REVIEW_TEST_DUE_DATE, TestConstants.REVIEW_TEST_PROJECT, + TestConstants.REVIEW_TEST_COMPONENTS, TestConstants.REVIEW_TEST_ENTRY_CRITERIA, + TestConstants.REVIEW_TEST_OBJECTIVES, TestConstants.REVIEW_TEST_REFERENCE_MATERIALS); + r4eAssert.assertNotNull(fReview); + r4eAssert.assertNotNull(fReview.getParticipantContainer()); + r4eAssert.assertNotNull(fReview.getAnomalyContainer()); + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_TYPE_INFORMAL, fReview.getReview().getType()); + r4eAssert.assertEquals(TestConstants.REVIEW_STRANGE_NAME_INF, fReview.getReview().getName()); + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_DESCRIPTION, fReview.getReview().getExtraNotes()); + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_PROJECT, fReview.getReview().getProject()); + for (int i = 0; i < TestConstants.REVIEW_TEST_COMPONENTS.length; i++) { + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_COMPONENTS[i], fReview.getReview().getComponents().get(i)); + } + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_ENTRY_CRITERIA, fReview.getReview().getEntryCriteria()); + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_OBJECTIVES, fReview.getReview().getObjectives()); + r4eAssert.assertEquals(TestConstants.REVIEW_TEST_REFERENCE_MATERIALS, fReview.getReview() + .getReferenceMaterial()); + r4eAssert.assertTrue(fReview.isOpen()); + } + +} |