public void Test001_UserSendsMessage() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'The authorized User can send the message :'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenMessagesLink(_baseUrl); var module = new MessageCenterModule(_driver); module.ComposeNewMessage(_userDisplayNameNumberOne, _subject, "Test Message"); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT New message is present in the inbox:"); Assert.That(module.WaitForElement(By.XPath("//ul[@id = 'inbox']//li[@class = 'ListCol-3']//a")).Text, Is.EqualTo(_subject), "Message subject is not found"); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberOne, _password); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT Message icon contains number '1' for incoming message :"); Assert.That(loginPage.WaitForElement(By.XPath(ControlPanelIDs.MessageLink + "/span")).Text, Is.EqualTo("1")); module.OpenMessagesUsingIcon(); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT New message is present in the list:"); Assert.That(module.WaitForElement(By.XPath("//ul[@id = 'inbox']//li[@class = 'ListCol-3']//a")).Text, Is.EqualTo(_subject), "Message subject is not found"); }
public void LoginToSite() { XDocument doc = XDocument.Load(DataFileLocation); XElement settings = doc.Document.Element("Tests").Element("settings"); XElement testSettings = doc.Document.Element("Tests").Element("journal"); _driver = StartBrowser(settings.Attribute("browser").Value); _baseUrl = settings.Attribute("baseURL").Value; string testName = testSettings.Attribute("name").Value; _userNameNumberOne = testSettings.Attribute("userNameNumberOne").Value; _userNameNumberTwo = testSettings.Attribute("userNameNumberTwo").Value; _userNameNumberThree = testSettings.Attribute("userNameNumberThree").Value; _userDisplayNameNumberOne = testSettings.Attribute("userDisplayNameNumberOne").Value; _userDisplayNameNumberTwo = testSettings.Attribute("userDisplayNameNumberTwo").Value; _userDisplayNameNumberThree = testSettings.Attribute("userDisplayNameNumberThree").Value; _password = testSettings.Attribute("password").Value; _subject = testSettings.Attribute("subject").Value; _comment = testSettings.Attribute("comment").Value; _fileNameToAttach = testSettings.Attribute("fileNameToAttach").Value; _pictureNameToAttach = testSettings.Attribute("pictureNameToAttach").Value; _pageName = testSettings.Attribute("pageName").Value; Trace.WriteLine(BasePage.RunningTestKeyWord + "'" + testName + "'"); Trace.WriteLine(BasePage.PreconditionsKeyWord); OpenMainPageAndLoginAsHost(); var manageUsersPage = new ManageUsersPage(_driver); manageUsersPage.OpenUsingControlPanel(_baseUrl); manageUsersPage.AddNewUser(_userNameNumberOne, _userDisplayNameNumberOne, "*****@*****.**", _password); manageUsersPage.AddNewUser(_userNameNumberTwo, _userDisplayNameNumberTwo, "*****@*****.**", _password); manageUsersPage.AddNewUser(_userNameNumberThree, _userDisplayNameNumberThree, "*****@*****.**", _password); CreatePageAndSetViewPermission(_pageName, "All Users", "allow"); AddModule(_pageName, Modules.CommonModulesDescription, "JournalModule", "ContentPane"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberTwo, _password); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenActivityFeedLink(_baseUrl); var module = new JournalModule(_driver); module.AddNewPostWithVisibilityPermission(_subject + " Community Members", "Community Members"); module.AddNewPostWithVisibilityPermission(_subject + " Private", "Private"); module.AddNewPostWithVisibilityPermission(_subject + " Everyone", "Everyone"); OpenMainPageAndLoginAsHost(); _logContent = LogContent(); }
public void Test001_RegisteredUserUploadsAvatar() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Registered User uploads Avatar'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _registeredUserName, _registeredUserPassword); var manageUserProfilePage = new ManageUserProfilePage(_driver); manageUserProfilePage.OpenUsingLink(_baseUrl); manageUserProfilePage.AddProfileAvatar(_avatarFileToUpload); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenUsingLink(_baseUrl); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT avatar file is loaded correctly"); userAccountPage.WaitForElement(By.XPath(ManageUserProfilePage.ProfilePhoto)).Info(); Assert.That(manageUserProfilePage.WaitForElement(By.XPath(ManageUserProfilePage.ProfilePhoto)).GetAttribute("src"), Is.StringContaining(_avatarFileToUpload), "The User Avatar is not added correctly"); }
public void Test005_RegisteredUserChangesProfile() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Registered User changes Profile'"); var loginPage = new LoginPage(_driver); loginPage.LetMeOut(); loginPage.OpenUsingUrl(_baseUrl); loginPage.DoLoginUsingUrl(_registeredUserName, _registeredUserPassword); var manageUserProfilePage = new ManageUserProfilePage(_driver); manageUserProfilePage.OpenUsingLink(_baseUrl); manageUserProfilePage.AddCity(_cityName); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenUsingLink(_baseUrl); userAccountPage.OpenMyProfileInfo(); Trace.WriteLine(BasePage.TraceLevelPage + "ASSERT the City Info is present on the screen"); Assert.That(userAccountPage.FindElement(By.XPath(UserAccountPage.LocationCity)).Text, Is.EqualTo(_cityName), "The City Info is not displayed correctly"); }
public void Test001_AddAsFriend() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Send Friend Request'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, _pageName); var module = new MemberDirectoryModule(_driver); module.AddAsFriend(_userDisplayNameNumberTwo); Trace.WriteLine("ASSERT 'Add Friend link changed to 'Pending Request' link'"); Assert.IsTrue(module.ElementPresent(By.XPath("//div[not(@style)]/div[ul[@class = 'MdMemberInfo']//span[contains(text(), '" + _userDisplayNameNumberTwo + "')]]/ul/li[@class = 'mdFriendPending']"))); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenFriendsLink(_baseUrl); userAccountPage.WaitForElement(By.XPath(MemberDirectoryModule.FriendsNotFoundMessage)).Info(); Trace.WriteLine("ASSERT 'Friends are not found' message is present :"); Assert.That(userAccountPage.FindElement(By.XPath(MemberDirectoryModule.FriendsNotFoundMessage)).Text, Is.EqualTo(MemberDirectoryModule.FriendsNotFoundMessageText), "Info message is not found"); loginPage.LoginUsingDirectUrl(_baseUrl,_userNameNumberTwo, _password); Trace.WriteLine("ASSERT Notification icon contains number '1' for incoming request :"); Assert.That(loginPage.WaitForElement(By.XPath(ControlPanelIDs.NotificationLink + "/span")).Text, Is.EqualTo("1")); }
public void Test002_AcceptFriendRequest() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'Accept Friend Request'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberTwo, _password); var blankPage = new BlankPage(_driver); blankPage.OpenUsingUrl(_baseUrl, _pageName); var module = new MemberDirectoryModule(_driver); module.AcceptFriendRequest(_userDisplayNameNumberThree); Trace.WriteLine("ASSERT 'Pending Request' link changed to 'Remove Friend' link'"); Assert.IsTrue(module.ElementPresent(By.XPath("//div[not(@style)]/div[ul[@class = 'MdMemberInfo']//span[contains(text(), '" + _userDisplayNameNumberThree + "')]]/ul/li[@class = 'mdFriendRemove']"))); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenFriendsLink(_baseUrl); Trace.WriteLine("ASSERT New friend is listed:"); Assert.IsTrue(userAccountPage.ElementPresent(By.XPath("//div[not(@style)]/div/ul[@class = 'MdMemberInfo']//span[contains(text(), '" + _userDisplayNameNumberThree + "')]")), "New Friend is not found"); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); userAccountPage.OpenFriendsLink(_baseUrl); Trace.WriteLine("ASSERT New friend is listed:"); Assert.IsTrue(userAccountPage.ElementPresent(By.XPath("//div[not(@style)]/div/ul[@class = 'MdMemberInfo']//span[contains(text(), '" + _userDisplayNameNumberTwo + "')]")), "New Friend is not found"); }
public void Test009_UserAttachesFileFromWebsiteToPost() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'The authorized User can attach the picture to the message :'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenActivityFeedLink(_baseUrl); var module = new JournalModule(_driver); module.AddNewPostWithAttachedWebsitePicture(_subject, _pictureNameToAttach); Trace.WriteLine("ASSERT the picture displayed correctly:"); Assert.IsTrue(module.ElementPresent(By.XPath("//div[@id = 'journalItems']/div[1]/div[@class = 'journalitem']/div/img[contains(@src, '" + _pictureNameToAttach + "')]")), "Message text is not displayed correctly"); }
public void Test006_UserDeletesMessage() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'The authorized User can delete the message :'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenActivityFeedLink(_baseUrl); var module = new JournalModule(_driver); module.DeletePost(_subject); Trace.WriteLine("ASSERT the posts are NOT displayed:"); Assert.That(module.FindElements(By.XPath("//div[@id = 'journalItems']/child::*")).Count, Is.EqualTo(0), "The posts are still displayed"); }
public void Test005_UserCommentsPost() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'The authorized User can comment the message :'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenActivityFeedLink(_baseUrl); var module = new JournalModule(_driver); module.CommentPost(_subject, _comment); Trace.WriteLine("ASSERT the original message is displayed:"); Assert.That(module.WaitForElement(By.XPath("//div[@class = 'journalitem']/p[1]")).Text, Is.EqualTo(_userDisplayNameNumberThree + _subject), "Message text is stiil displayed"); Trace.WriteLine("ASSERT the comment message is displayed:"); Assert.That(module.WaitForElement(By.XPath("//div[p[@class = 'journalfooter']]//li/p")).Text, Is.StringContaining(_userDisplayNameNumberThree + _comment), "Message text is stiil displayed"); }
public void Test004_UserPostsMessage() { Trace.WriteLine(BasePage.RunningTestKeyWord + "'The authorized User can post the message :'"); var loginPage = new LoginPage(_driver); loginPage.LoginUsingDirectUrl(_baseUrl, _userNameNumberThree, _password); var userAccountPage = new UserAccountPage(_driver); userAccountPage.OpenActivityFeedLink(_baseUrl); var module = new JournalModule(_driver); module.AddNewPost(_subject); Trace.WriteLine("ASSERT the author displayed correctly:"); Assert.That(module.WaitForElement(By.XPath("//span[@class = 'authorname']/a")).Text, Is.EqualTo(_userDisplayNameNumberThree), "Message author is not found"); Trace.WriteLine("ASSERT the message displayed correctly:"); Assert.That(module.WaitForElement(By.XPath("//div[@class = 'journalitem']/p[1]")).Text, Is.StringContaining(_userDisplayNameNumberThree + _subject), "Message text is not displayed correctly"); }