PageRenderTime 49ms CodeModel.GetById 23ms RepoModel.GetById 0ms app.codeStats 0ms

/src/test/java/com/atlassian/jira/plugins/bitbucket/pageobjects/page/GithubRegisteredOAuthAppsPage.java

https://bitbucket.org/atlassian/jira-bitbucket-connector/
Java | 74 lines | 60 code | 11 blank | 3 comment | 5 complexity | 49b22e5aee4e0960beb6be5babe210f8 MD5 | raw file
  1. package com.atlassian.jira.plugins.bitbucket.pageobjects.page;
  2. import com.atlassian.pageobjects.Page;
  3. import com.atlassian.pageobjects.elements.ElementBy;
  4. import com.atlassian.pageobjects.elements.PageElement;
  5. import org.openqa.selenium.By;
  6. import java.util.List;
  7. /**
  8. *
  9. */
  10. public class GithubRegisteredOAuthAppsPage implements Page
  11. {
  12. public static final String PAGE_URL = "https://github.com/account/applications";
  13. @ElementBy(tagName = "body")
  14. PageElement pageBodyElm;
  15. private String clientID;
  16. private String clientSecret;
  17. private String oauthAppUrl;
  18. @Override
  19. public String getUrl()
  20. {
  21. return PAGE_URL;
  22. }
  23. public void parseClientIdAndSecret(String appName)
  24. {
  25. List<PageElement> appRecords = pageBodyElm.findAll(By.className("info"));
  26. for (PageElement appRecordDiv : appRecords)
  27. {
  28. if (!appRecordDiv.find(By.linkText(appName)).isPresent())
  29. {
  30. continue;
  31. }
  32. oauthAppUrl = "https://github.com" + pageBodyElm.find(By.linkText(appName)).getAttribute("href");
  33. PageElement statisticInfoDiv = appRecordDiv.find(By.className("body"));
  34. final String clientIdPrefix = "Client ID:";
  35. final String clientSecretPrefix = "Secret:";
  36. List<PageElement> elements = statisticInfoDiv.findAll(By.tagName("li"));
  37. for (PageElement elm : elements)
  38. {
  39. String elmText = elm.getText();
  40. if (elmText.contains(clientIdPrefix))
  41. {
  42. clientID = elmText.substring(elmText.indexOf(clientIdPrefix) + clientIdPrefix.length()).trim();
  43. }
  44. if (elmText.contains(clientSecretPrefix))
  45. {
  46. clientSecret = elmText.substring(elmText.indexOf(clientSecretPrefix) + clientSecretPrefix.length()).trim();
  47. }
  48. }
  49. }
  50. }
  51. public String getClientID()
  52. {
  53. return clientID;
  54. }
  55. public String getClientSecret()
  56. {
  57. return clientSecret;
  58. }
  59. public String getOauthAppUrl()
  60. {
  61. return oauthAppUrl;
  62. }
  63. }