com.atlassian.confluence
Class AbstractConfluenceAcceptanceTest

java.lang.Object
  extended by junit.framework.Assert
      extended by junit.framework.TestCase
          extended by com.atlassian.confluence.junit3.JUnit3TimingTestCase
              extended by com.atlassian.confluence.AbstractConfluenceAcceptanceTest
All Implemented Interfaces:
junit.framework.Test
Direct Known Subclasses:
AbstractAdminAcceptanceTest, AbstractLdapAcceptanceTest, AbstractMultimediaMacroAcceptanceTest, AbstractPermissionsAcceptanceTest, AbstractRpcAcceptanceTest, AbstractSidebarAcceptanceTest, AbstractSoapRpcAcceptanceTest, ActionAutowireSecurityAcceptanceTest, AddPageAcceptanceTest, AddPageSecurityAcceptanceTest, AddUserAcceptanceTest, AdminForceUpgradeAcceptanceTest, AntiXSSAcceptanceTest, AtlassianSecurityAcceptanceTest, AtlassianUserUpgradeAcceptanceTest, AttachedImagesJsonAcceptanceTest, AttachmentAcceptanceTest, AttachmentMigrationAcceptanceTest, AttachmentUploadAcceptanceTest, BackupAndRestoreXsrfAcceptanceTest, BackupImportAcceptanceTODOTest, BasicSoapAcceptanceTest, BigAcceptanceTest, BlogAcceptanceTest, BlogSlowAcceptanceTest, BrowseMenuAcceptanceTest, BrowserLanguageAcceptanceTest, BrowseSpaceAcceptanceTest, CacheSizeChangeAcceptanceTest, CaptchaAcceptanceTest, ClasspathAcceptanceTest, ColourSchemeAcceptanceTest, ColourSchemeXsrfAcceptanceTest, CommentsAcceptanceTest, CommentXsrfAcceptanceTest, ComplexPagePermissionsAcceptanceTest, ConfigureLoggingAcceptanceTest, ContentNameSearchAcceptanceTest, CreateContentXsrfAcceptanceTest, CreateDialogXsrfAcceptanceTest, CreateSpaceAcceptanceTest, CreateSpaceXsrfAcceptanceTest, CustomHtmlAcceptanceTest, CustomHtmlXsrfAcceptanceTest, CustomizeLogoAcceptanceTest, CustomizeSiteLogoAcceptanceTest, CustomLogoMigrationAcceptanceTest, CustomStylesheetXsrfAcceptanceTest, DailyReportNotificationsAcceptanceTest, DarkFeaturesAcceptanceTest, DashboardActionsSpacesAcceptanceTest, DashboardActionTemplatesAcceptanceTest, DashboardRecentlyUpdatedContentMacroAcceptanceTest, DateFormatAcceptanceTest, DecoratorAcceptanceTest, DefaultSpaceLogoXsrfAcceptanceTest, DiffNotificationAcceptanceTest, DiffPagesAcceptanceTest, DocThemeAcceptanceTest, DomainRestrictedSignupAcceptanceTest, DraftsAcceptanceTest, DraftsXsrfAcceptanceTest, EditLayoutsAcceptanceTest, EditSpaceAcceptanceTest, EmailAndLinkExternalizationAcceptanceTest, EmailConverterAcceptanceTest, EmbeddedCrowdUpgradeAcceptanceTest, EmbeddedObjectAcceptanceTest, ErrorPageAcceptanceTest, EventsAcceptanceTest, ExcerptMacroAcceptanceTest, ExternalGadgetDirectoryAcceptanceTest, FavouritePageXsrfAcceptanceTest, FavouriteSpaceXsrfAcceptanceTest, FileHandleTestingSuite.FileHandleTest, FiveHundredPageSecurityAcceptanceTest, FlushCacheAcceptanceTest, FuncTestPermissionAcceptanceTest, GadgetCustomWhitelistAcceptanceTest, GadgetWhiteListAcceptanceTest, GalleryAcceptanceTest, GeneralConfigurationAcceptanceTest, GetStartedAcceptanceTest, GlobalAdminAcceptanceTest, GlobalAdminXsrfAcceptanceTest, GlobalEntitiesAcceptanceTest, GlobalPermissionsXsrfAcceptanceTest, GlobalReportsAcceptanceTest, GroupManagementReadOnlyAcceptanceTest, GroupMembersAcceptanceTest, GroupPickerAcceptanceTest, GzipFilterAcceptanceTest, HistoricalPageViewAcceptanceTest, HtmlExportAcceptanceTest, HtmlMacrosAcceptanceTest, HttpHeadersAcceptanceTest, HttpMethodValidationAcceptanceTest, I18nModeAcceptanceTest, I18nResourceAcceptanceTest, ImportPagesFromDiskAcceptanceTest, ImportPagesXsrfAcceptanceTest, IncomingLinkAcceptanceTest, IndexingAcceptanceTest, InheritedPagePermissionsAcceptanceTest, InviteUsersAcceptanceTest, JobPluginAcceptanceTest, JohnsonFilterAcceptanceTest, KnownBugsAcceptanceTest, LabelsAcceptanceTest, LanguageAcceptanceTest, LargeImportAcceptanceTest, LicensingAcceptanceTest, LinkTypeAcceptanceTest, ListPageAlternativesAcceptanceTest, LoggingAndProfilingXsrfAcceptanceTest, LoginAcceptanceTest, LogoutAcceptanceTest, MacroDiffAcceptanceTest, MacroMigrationAcceptanceTest, MacroPluginAcceptanceTest, MacrosAcceptanceTest, MacrosRespectPagePermissionsAcceptanceTest, MailArchivingAcceptanceTest, MailQueueXsrfAcceptanceTest, MailSpaceAdminXsrfAcceptanceTest, ManageUsersAndGroupsXsrfAcceptanceTest, MovePageAcceptanceTest, MultipleAttachmentsAcceptanceTest, NetworkNotificationsAcceptanceTest, NetworkTabAcceptanceTest, Node, NonClusterLicensingAcceptanceTest, NotificationContentsAcceptanceTest, NotificationFooterLinksAcceptanceTest, NotificationImportAcceptanceTest, NotificationRenderTypeAcceptanceTest, NotificationsXsrfAcceptanceTest, OnDemandSpacePermissionsDefaultUpgradeTaskAcceptanceTest, OpenSearchAcceptanceTest, OrphanedPagesAcceptanceTest, PageCopyAcceptanceTest, PageDestinationSearchAcceptanceTest, PageEditAcceptanceTest, PageExportAcceptanceTest, PageHistoryAcceptanceTest, PageHistoryXsrfAcceptanceTest, PageInfoAcceptanceTest, PageListingAcceptanceTest, PageNotFoundAcceptanceTest, PageOperationsAcceptanceTest, PagePermissionsWithCommentAttachmentAcceptanceTest, PagePropertiesReportAcceptanceTest, PageTemplatesAcceptanceTest, PageTitlesAcceptanceTest, PageTreeMovePageAcceptanceTest, PageXsrfAcceptanceTest, PaginationAcceptanceTest, PeopleDirectoryAcceptanceTest, PersonalLabelsAcceptanceTest, PersonalSpaceAcceptanceTest, PlatformCtkAcceptanceTest, PluginAcceptanceTest, PluginAdminXsrfAcceptanceTest, PluginDecorationAcceptanceTest, PopularLabelsMacroAcceptanceTest, RaiseSupportRequestXsrfAcceptanceTest, RecentlyUpdatedContentMacroAcceptanceTest, RecentlyUsedLabelsMacroAcceptanceTest, RecommendedUpdatesEmailAcceptanceTest, RefactoringAcceptanceTest, RelatedContentRefactorerAcceptanceTest, RemoveClassicThemeAcceptanceTest, RemovePageRestrictionsXsrfAcceptanceTest, RemoveSpaceAcceptanceTest, ReportsAcceptanceTest, ResetPasswordAcceptanceTest, RestAcceptanceTest, RpcVersion1AcceptanceTest, RpcVersion2AcceptanceTest, RssAcceptanceTest, RssFeedBuilderAcceptanceTest, ScheduleJobAdminXsrfAcceptanceTest, SearchAcceptanceTest, SearchSuggestionsAcceptanceTest, SecurityAcceptanceTest, SecurityConfigurationAcceptanceTest, ServletPluginAcceptanceTest, SignupAcceptanceTest, SignupNotificationsAcceptanceTest, SiteExportAcceptanceTest, SiteImportAcceptanceTest, SiteSupportAcceptanceTest, SpaceAdminAcceptanceTest, SpaceAdminXsrfAcceptanceTest, SpaceAdvancedAcceptanceTest, SpaceDetailsAcceptanceTest, SpaceExportAcceptanceTest, SpaceExportXsrfAcceptanceTest, SpaceImportAcceptanceTest, SpaceKeyDirectoryTraversalAcceptanceTest, SpaceLabelsAcceptanceTest, SpaceLogoXsrfAcceptanceTest, SpacePermissionDefaultsAcceptanceTest, SpacePermissionsXsrfAcceptanceTest, SpacesListMacroAcceptanceTest, SpacesListMacroAcceptanceTest, SpaceTemplateAcceptanceTest, SpringPluginUploadAcceptanceTest, StylesheetAcceptanceTest, SuperbatchAcceptanceTest, SupportRequestAcceptanceTest, SupportToolsPluginAcceptanceTest, SupportUtilityAcceptanceTest, SystemInformationAcceptanceTest, TestRequestLicenseFromMac, ThemeChangeAcceptanceTest, ThemesXsrfAcceptanceTest, ThreadedCommentAcceptanceTest, ThumbnailAcceptanceTest, TimeZoneAcceptanceTest, TrackbackAcceptanceTest, TrashCanAcceptanceTest, TrustedApplicationAcceptanceTest, TrustedApplicationXsrfAcceptanceTest, UndefinedPagesAcceptanceTest, UniqueHeadingIdAcceptanceTest, UpdateLicenseDetailsXsrfAcceptanceTest, UpdateStatusXsrfAcceptanceTest, UPMAcceptanceTest, UserFollowAcceptanceTest, UserHoverAcceptanceTest, UserIndexingUpgradeTaskTest, UserMacrosAcceptanceTest, UserManagementAcceptanceTest, UserManagementReadOnlyAcceptanceTest, UserMenuAcceptanceTest, UserPickerAcceptanceTest, UserPreferencesAcceptanceTest, UserProfileAcceptanceTest, UserProfilePictureXsrfAcceptanceTest, UserProfileXsrfAcceptanceTest, UserStatusAcceptanceTest, UserStatusPermissionsAcceptanceTest, VelocityDeprecationAcceptanceTest, ViewSourceAcceptanceTest, WebDavAcceptanceTest, WebItemPluginAcceptanceTest, WebPanelAcceptanceTest, WebResourceTransformerAcceptanceTest, WebSudoAcceptanceTest, WelcomeMessageAcceptanceTest, WordExportAcceptanceTest

public abstract class AbstractConfluenceAcceptanceTest
extends com.atlassian.confluence.junit3.JUnit3TimingTestCase

This superclass provides Confluence specific functions useful in acceptance tests.


Field Summary
static String ANONYMOUS_USER
           
static String DASHBOARD_RECENT_UPDATES_URL
           
protected static DirectoryConfiguration DIRECTORY_CONFIG
           
protected  PageSourceWrappingExceptionTransformer exceptionTransformer
           
protected  List<File> filesToDelete
           
protected  org.slf4j.Logger log
           
protected  LogAdjuster logAdjuster
          Can be used by subclasses to turn logging on the server up or down for just one test.
static RandomnessHandler RANDOM
           
protected  ConfluenceRpc rpc
           
protected  ServerStateManager serverStateManager
           
static User TEST_ADMIN
           
 BlogPost TEST_BLOG
           
 Comment TEST_COMMENT
           
protected static String TEST_GROUP1
           
protected static String TEST_GROUP2
           
 Page TEST_PAGE
           
 Space TEST_SPACE
           
 Space TEST_SPACE2
           
static User TEST_USER1
           
static User TEST_USER2
           
static String TESTBLOG_CONTENT
           
static String TESTBLOG_TITLE
           
protected  TestData testData
           
static String TESTPAGE_COMMENT
           
static String TESTPAGE_CONTENT
           
static String TESTPAGE_TITLE
           
static String TESTSPACE_KEY
           
static String TESTSPACE_TITLE
           
static String TESTSPACE2_KEY
           
static String TESTSPACE2_TITLE
           
protected static String VIEW_PERSONAL_SPACE_LINK
           
protected  net.sourceforge.jwebunit.junit.WebTester webTester
           
protected  ConfluenceRpc wikiMarkupRpc
          Use this for tests where you want to create pages/comments/blogs using wikimarkup.
 
Constructor Summary
AbstractConfluenceAcceptanceTest()
           
AbstractConfluenceAcceptanceTest(String testName)
           
 
Method Summary
 AdminConsole adminConsole()
           
 AttachmentsTester attachments()
           
 ViewContentBean createAndWatchTestPage(Page page, String spaceKey, String pageTitle)
           
 void createSpaceViaWebUI(Space space)
           
 void createTestSpaceViaWebUI()
          For those times we need to ensure a space was created via the web UI (For example if the web UI may behave differently to RPC)
 void disableAnonymousAccess()
           
 void enableAnonymousAccess()
           
protected  String generateBaseUrl()
           
 File generateFile(String filename, String contents)
           
 String getAppContext()
           
 String getBaseUrl()
           
 String getConfiguredBaseUrl()
          Returns the configured base URL in the Confluence app.
 String getFriendlyRelativeDate(Date now, Date date, TimeZone timeZone)
          Use the FriendlyDateFormatter to format the date relative to the "now" time.
protected  PluginHelper getPluginHelper()
           
 void goToBlogCollector(String spaceKey)
           
 void goToPagesCollector(String spaceKey)
          Deprecated. since 5.0. Use PagesCollectorBean instead
 boolean isClustered()
           
 void logInAsAdminAtHomepage()
           
 void loginAsTestUser()
           
 void loginAsTestUser2()
           
 void loginAsTestUserAtHomepage()
           
 LoginHelper logins()
           
 void logout()
          Log out by going straight to the regular logout.action and then starting a new conversation at the start location, usually noop.jsp.
 PageAcceptanceTester pages()
           
protected  void rebuildIndex()
           
protected  void setUp()
           
protected  void setUp(String beginAt)
          Default setUp method.
protected  void setUpTestNG(Method method)
          Called by TestNG, calls setUp() on the current class, prevents the need to put this annotation everywhere, and sets the test name properly.
protected  void tearDown()
          Default tearDown method.
protected  void tearDownTestNG()
          Called by TestNG, calls tearDown() on the current class, prevents the need to put this annotation everywhere, and sets the test name properly.
 UserManagementHelper users()
           
 void viewHomepage()
           
 void viewPeopleDirectory()
           
 SpaceAdmin viewSpaceAdmin(Space space)
          Deprecated. Since 5.0. Use #viewSpaceTools()
 SpacePermissions viewSpacePermissions(Space space)
           
 void viewSpaceSummary(String spaceKey)
           
 void viewSpaceTools(Space space)
           
 void viewSpaceTools(String spaceKey)
           
 void viewTrash(String spaceKey, String spaceTitle)
           
 PagesCollectorBean watchSpace(String spaceKey)
           
static String webAppContextPath()
           
 
Methods inherited from class com.atlassian.confluence.junit3.JUnit3TimingTestCase
runBare, setExceptionTransformer
 
Methods inherited from class junit.framework.TestCase
countTestCases, createResult, getName, run, run, runTest, setName, toString
 
Methods inherited from class junit.framework.Assert
assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertEquals, assertFalse, assertFalse, assertNotNull, assertNotNull, assertNotSame, assertNotSame, assertNull, assertNull, assertSame, assertSame, assertTrue, assertTrue, fail, fail, failNotEquals, failNotSame, failSame, format
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

log

protected final transient org.slf4j.Logger log

exceptionTransformer

protected final PageSourceWrappingExceptionTransformer exceptionTransformer

testData

protected TestData testData

DIRECTORY_CONFIG

protected static DirectoryConfiguration DIRECTORY_CONFIG

TEST_ADMIN

public static final User TEST_ADMIN

TEST_USER1

public static final User TEST_USER1

TEST_USER2

public static final User TEST_USER2

ANONYMOUS_USER

public static final String ANONYMOUS_USER
See Also:
Constant Field Values

TEST_GROUP1

protected static final String TEST_GROUP1
See Also:
Constant Field Values

TEST_GROUP2

protected static final String TEST_GROUP2
See Also:
Constant Field Values

TEST_SPACE

public Space TEST_SPACE

TEST_SPACE2

public Space TEST_SPACE2

TESTSPACE_TITLE

public static String TESTSPACE_TITLE

TESTSPACE_KEY

public static String TESTSPACE_KEY

TESTSPACE2_TITLE

public static String TESTSPACE2_TITLE

TESTSPACE2_KEY

public static String TESTSPACE2_KEY

TESTPAGE_TITLE

public static final String TESTPAGE_TITLE
See Also:
Constant Field Values

TESTPAGE_CONTENT

public static final String TESTPAGE_CONTENT
See Also:
Constant Field Values

TESTPAGE_COMMENT

public static final String TESTPAGE_COMMENT
See Also:
Constant Field Values

TESTBLOG_TITLE

public static final String TESTBLOG_TITLE
See Also:
Constant Field Values

TESTBLOG_CONTENT

public static final String TESTBLOG_CONTENT
See Also:
Constant Field Values

TEST_PAGE

public Page TEST_PAGE

TEST_BLOG

public BlogPost TEST_BLOG

TEST_COMMENT

public Comment TEST_COMMENT

RANDOM

public static final RandomnessHandler RANDOM

wikiMarkupRpc

protected ConfluenceRpc wikiMarkupRpc
Use this for tests where you want to create pages/comments/blogs using wikimarkup.


rpc

protected ConfluenceRpc rpc

serverStateManager

protected ServerStateManager serverStateManager

filesToDelete

protected List<File> filesToDelete

VIEW_PERSONAL_SPACE_LINK

protected static final String VIEW_PERSONAL_SPACE_LINK
See Also:
Constant Field Values

logAdjuster

protected LogAdjuster logAdjuster
Can be used by subclasses to turn logging on the server up or down for just one test. LogAdjuster.resetLogLevels() is called in tearDown().


DASHBOARD_RECENT_UPDATES_URL

public static final String DASHBOARD_RECENT_UPDATES_URL
See Also:
Constant Field Values

webTester

protected net.sourceforge.jwebunit.junit.WebTester webTester
Constructor Detail

AbstractConfluenceAcceptanceTest

public AbstractConfluenceAcceptanceTest(String testName)

AbstractConfluenceAcceptanceTest

public AbstractConfluenceAcceptanceTest()
Method Detail

webAppContextPath

public static String webAppContextPath()

attachments

public AttachmentsTester attachments()

adminConsole

public AdminConsole adminConsole()

setUp

protected void setUp()
              throws Exception
Overrides:
setUp in class junit.framework.TestCase
Throws:
Exception

setUpTestNG

protected void setUpTestNG(Method method)
                    throws Exception
Called by TestNG, calls setUp() on the current class, prevents the need to put this annotation everywhere, and sets the test name properly.

Parameters:
method - The test method being called
Throws:
Exception - if setup fails

setUp

protected void setUp(String beginAt)
              throws Exception
Default setUp method. Establishes XML-RPC connection and sets the base URL. Also configures LDAP repository.

Parameters:
beginAt - the initial path (relative to the context path) to begin at
Throws:
Exception - from super

getPluginHelper

protected PluginHelper getPluginHelper()

tearDownTestNG

protected void tearDownTestNG()
                       throws Exception
Called by TestNG, calls tearDown() on the current class, prevents the need to put this annotation everywhere, and sets the test name properly.

Throws:
Exception - if tear down fails

tearDown

protected void tearDown()
                 throws Exception
Default tearDown method. Removes any files which were added to the filesToDelete list.

Overrides:
tearDown in class junit.framework.TestCase
Throws:
Exception

generateBaseUrl

protected String generateBaseUrl()
Returns:
a random base URL selected from the nodes in the cluster. Used for switching between nodes for cluster testing.

getConfiguredBaseUrl

public String getConfiguredBaseUrl()
Returns the configured base URL in the Confluence app. This is the same as the base URL of node #1 in a cluster.

Returns:
it

logInAsAdminAtHomepage

public void logInAsAdminAtHomepage()

loginAsTestUser

public void loginAsTestUser()

loginAsTestUserAtHomepage

public void loginAsTestUserAtHomepage()

loginAsTestUser2

public void loginAsTestUser2()

logout

public void logout()
Log out by going straight to the regular logout.action and then starting a new conversation at the start location, usually noop.jsp. You probably want to call LoginHelper.logOutSlowly() instead if you're testing what logging out actually does, and LoginHelper.logout() if you just want to clean up the session as fast as possible.

See Also:
LoginHelper.logout(), LoginHelper.logOutSlowly()

createSpaceViaWebUI

public void createSpaceViaWebUI(Space space)

createTestSpaceViaWebUI

public void createTestSpaceViaWebUI()
For those times we need to ensure a space was created via the web UI (For example if the web UI may behave differently to RPC)


viewPeopleDirectory

public void viewPeopleDirectory()

viewSpaceAdmin

public SpaceAdmin viewSpaceAdmin(Space space)
Deprecated. Since 5.0. Use #viewSpaceTools()


goToPagesCollector

@Deprecated
public void goToPagesCollector(String spaceKey)
Deprecated. since 5.0. Use PagesCollectorBean instead


goToBlogCollector

public void goToBlogCollector(String spaceKey)

viewSpaceSummary

public void viewSpaceSummary(String spaceKey)

viewSpacePermissions

public SpacePermissions viewSpacePermissions(Space space)

viewHomepage

public void viewHomepage()

viewTrash

public void viewTrash(String spaceKey,
                      String spaceTitle)

enableAnonymousAccess

public void enableAnonymousAccess()

disableAnonymousAccess

public void disableAnonymousAccess()

getAppContext

public String getAppContext()

viewSpaceTools

public void viewSpaceTools(Space space)

viewSpaceTools

public void viewSpaceTools(String spaceKey)

createAndWatchTestPage

public ViewContentBean createAndWatchTestPage(Page page,
                                              String spaceKey,
                                              String pageTitle)
                                       throws Exception
Throws:
Exception

watchSpace

public PagesCollectorBean watchSpace(String spaceKey)

generateFile

public File generateFile(String filename,
                         String contents)

getBaseUrl

public String getBaseUrl()
Returns:
The base url that is used in tests. Note that in case of cluster it will return a base url of the node that the current test is running against. For configured base url please use getConfiguredBaseUrl() method.

isClustered

public boolean isClustered()
Returns:
true if testing against a clustered intance of Confluence, false otherwise.

getFriendlyRelativeDate

public String getFriendlyRelativeDate(Date now,
                                      Date date,
                                      TimeZone timeZone)
Use the FriendlyDateFormatter to format the date relative to the "now" time. Note that the output format varies greatly even from second to second -- see FriendlyDateFormatter.

Parameters:
now - the date which the relative time is calculated in relation to
date - the date of some event which is to be formatted
timeZone - the current time zone
Returns:
a formatted relative date-time
See Also:
FriendlyDateFormatter

rebuildIndex

protected void rebuildIndex()
                     throws InterruptedException
Throws:
InterruptedException

pages

public PageAcceptanceTester pages()

users

public UserManagementHelper users()

logins

public LoginHelper logins()


Copyright © 2003-2013 Atlassian. All Rights Reserved.