Advertisement
Guest User

Untitled

a guest
Feb 22nd, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.55 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.nio.file.Files;
  3. import java.nio.file.Paths;
  4. import org.junit.Before;
  5. import org.junit.Test;
  6. import org.openqa.selenium.By;
  7. import org.openqa.selenium.Keys;
  8. import org.openqa.selenium.WebDriver;
  9. import org.openqa.selenium.WebElement;
  10. import org.openqa.selenium.chrome.ChromeDriver;
  11.  
  12. public class InstallServers {
  13.  
  14. WebDriver driver = new ChromeDriver();
  15.  
  16. /* DEV and MR will be parameters for the future */
  17. private String MR = "17.11";
  18. private String env_Name = "QA3";
  19. private String BE_Jira_Version; /* latest pokerbackend version from jira */
  20. private String SE_Jira_Version; /* latest server version from jira */
  21. private String BE_apps_Version; /*
  22. * the installed backend version on the
  23. * environment
  24. */
  25. private String SE_apps_Version; /*
  26. * the installed server version on the
  27. * environment
  28. */
  29.  
  30.  
  31. @Before
  32. public void getinfo() throws IOException, InterruptedException {
  33. System.setProperty("webdriver.chrome.driver ", "chromedriver.exe");
  34. driver.get(
  35. "https://jira.poker.ptec/issues/?jql=issuetype%20%3D%20Build%20and%20component%3Dpokerbackend%20and%20fixVersion%3D17.11");
  36. driver.manage().window().maximize();
  37.  
  38. /* Login into jira using credentials from txt file */
  39. String username = Files.readAllLines(Paths.get("up.txt")).get(0);
  40. String pass = Files.readAllLines(Paths.get("up.txt")).get(1);
  41. driver.findElement(By.id("user-options")).click();
  42. driver.findElement(By.name("os_username")).sendKeys(username);
  43. driver.findElement(By.name("os_password")).sendKeys(pass);
  44. driver.findElement(By.name("login")).click();
  45.  
  46. /* getting the latest BE version */
  47. WebElement BE = driver.findElement(By.xpath("//td[@class='summary']"));
  48. BE_Jira_Version = BE.getText();
  49. System.out.println("Latest BE version is : " + BE_Jira_Version);
  50.  
  51. /* getting latest server_version */
  52. driver.findElement(By.id("advanced-search")).clear();
  53. driver.findElement(By.id("advanced-search"))
  54. .sendKeys("issuetype = Build and component=pokergame and fixVersion=" + MR);
  55. driver.findElement(By.xpath("//span[text()='Search']")).click();
  56. Thread.sleep(2000);
  57. WebElement SE = driver.findElement(By.xpath("//td[@class='summary']"));
  58. SE_Jira_Version = SE.getText();
  59. System.out.println("Latest server version is : " + SE_Jira_Version);
  60.  
  61. /* getting current version of server and BE from poker_apps page */
  62. driver.get("http://bg-hs/poker-versions/");
  63. WebElement BE_apps = driver
  64. .findElement(By.xpath("//td[@site='" + env_Name + "'" + "and @field='poker_backend']"));
  65. BE_apps_Version = BE_apps.getText();
  66. System.out.println("Current BE version is : " + BE_apps_Version);
  67. WebElement SE_apps = driver
  68. .findElement(By.xpath("//td[@site='" + env_Name + "'" + "and @field='poker_servers']"));
  69. SE_apps_Version = SE_apps.getText();
  70. System.out.println("Current Server version is : " + SE_apps_Version);
  71.  
  72. /* All required versions are collected */
  73.  
  74. }
  75.  
  76. public void setBE_version(String BE_Jira_Version) {
  77. this.BE_Jira_Version = BE_Jira_Version;
  78. }
  79.  
  80. public void setSE_version(String SE_Jira_Version) {
  81. this.SE_Jira_Version = SE_Jira_Version;
  82. }
  83.  
  84. public void setBE_App_Version(String BE_apps_Version) {
  85. this.BE_apps_Version = BE_apps_Version;
  86. }
  87.  
  88. public void setSE_App_Version(String SE_apps_Version) {
  89. this.SE_apps_Version = SE_apps_Version;
  90. }
  91.  
  92. @Test
  93. public void Install() throws IOException {
  94. String username = Files.readAllLines(Paths.get("up.txt")).get(0);
  95. String pass = Files.readAllLines(Paths.get("up.txt")).get(1);
  96. driver.get("http://bamboo.poker.ptec/allPlans.action");
  97. driver.findElement(By.id("login")).click();
  98. driver.findElement(By.name("os_username")).sendKeys(username);
  99. driver.findElement(By.name("os_password")).sendKeys(pass);
  100. driver.findElement(By.id("loginForm_save")).click();
  101. driver.findElement(By.id("viewBuild:POKDEP-" + env_Name)).click();
  102. driver.findElement(By.xpath("//button[contains(., 'Action')]")).click();
  103. driver.findElement(By.id("editBuild:POKDEP-" + env_Name)).click();
  104. driver.findElement(By.id("variables_POKDEP-" + env_Name)).click();
  105.  
  106. /* if versions are up to date */
  107. if (BE_Jira_Version.equals(BE_apps_Version) & SE_Jira_Version.equals(SE_apps_Version)) {
  108. driver.close();
  109. }
  110.  
  111. if (!BE_Jira_Version.equals(BE_apps_Version) & !SE_Jira_Version.equals(SE_apps_Version)) {
  112. /* install all */
  113. }
  114.  
  115. if (!BE_Jira_Version.equals(BE_apps_Version)) {
  116. if (!SE_Jira_Version.equals(SE_apps_Version)) {
  117. System.out.println("we have to upload servers ");
  118. System.out.println("We have to upload BE");
  119. WebElement backend_Field = driver.findElement(By.xpath("//td[@data-variable-key='BE_VERSION']//span"));
  120. backend_Field.click();
  121. WebElement backend_Input_Field = driver.findElement(By.xpath("//td[@data-variable-key='BE_VERSION']//input"));
  122. backend_Input_Field.sendKeys(Keys.chord(Keys.CONTROL, "a"));backend_Input_Field.sendKeys(SE_Jira_Version);
  123.  
  124. } else {
  125. /* disable server properties */
  126. }
  127. if (!SE_Jira_Version.equals(SE_apps_Version)) {
  128. /* send version for server */
  129. WebElement server_Field = driver
  130. .findElement(By.xpath("//td[@data-variable-key='SERVERS_VERSION']//span"));
  131. server_Field.click();
  132. WebElement server_Input_Feld = driver
  133. .findElement(By.xpath("//td[@data-variable-key='SERVERS_VERSION']//input"));
  134. server_Input_Feld.sendKeys(Keys.chord(Keys.CONTROL, "a"));
  135. server_Input_Feld.sendKeys(SE_Jira_Version);server_Input_Feld.sendKeys(Keys.ENTER);
  136.  
  137. }
  138.  
  139. }
  140. }
  141. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement