index.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. "use strict";
  2. function __export(m) {
  3. for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
  4. }
  5. Object.defineProperty(exports, "__esModule", { value: true });
  6. __export(require("./attachSession"));
  7. __export(require("./browserStack"));
  8. __export(require("./direct"));
  9. __export(require("./driverProvider"));
  10. __export(require("./hosted"));
  11. __export(require("./local"));
  12. __export(require("./mock"));
  13. __export(require("./sauce"));
  14. __export(require("./testObject"));
  15. __export(require("./kobiton"));
  16. __export(require("./useExistingWebDriver"));
  17. const attachSession_1 = require("./attachSession");
  18. const browserStack_1 = require("./browserStack");
  19. const direct_1 = require("./direct");
  20. const hosted_1 = require("./hosted");
  21. const local_1 = require("./local");
  22. const mock_1 = require("./mock");
  23. const sauce_1 = require("./sauce");
  24. const testObject_1 = require("./testObject");
  25. const kobiton_1 = require("./kobiton");
  26. const useExistingWebDriver_1 = require("./useExistingWebDriver");
  27. const logger_1 = require("../logger");
  28. let logger = new logger_1.Logger('driverProviders');
  29. exports.buildDriverProvider = (config) => {
  30. let driverProvider;
  31. if (config.directConnect) {
  32. driverProvider = new direct_1.Direct(config);
  33. exports.logWarnings('directConnect', config);
  34. }
  35. else if (config.seleniumWebDriver) {
  36. driverProvider = new useExistingWebDriver_1.UseExistingWebDriver(config);
  37. exports.logWarnings('useExistingWebDriver', config);
  38. }
  39. else if (config.seleniumAddress) {
  40. if (config.seleniumSessionId) {
  41. driverProvider = new attachSession_1.AttachSession(config);
  42. exports.logWarnings('attachSession', config);
  43. }
  44. else {
  45. driverProvider = new hosted_1.Hosted(config);
  46. exports.logWarnings('hosted', config);
  47. }
  48. }
  49. else if (config.testobjectUser && config.testobjectKey) {
  50. driverProvider = new testObject_1.TestObject(config);
  51. exports.logWarnings('testObject', config);
  52. }
  53. else if (config.kobitonUser && config.kobitonKey) {
  54. driverProvider = new kobiton_1.Kobiton(config);
  55. exports.logWarnings('kobiton', config);
  56. }
  57. else if (config.browserstackUser && config.browserstackKey) {
  58. driverProvider = new browserStack_1.BrowserStack(config);
  59. exports.logWarnings('browserStack', config);
  60. }
  61. else if (config.sauceUser && config.sauceKey) {
  62. driverProvider = new sauce_1.Sauce(config);
  63. exports.logWarnings('sauce', config);
  64. }
  65. else if (config.seleniumServerJar) {
  66. driverProvider = new local_1.Local(config);
  67. exports.logWarnings('local', config);
  68. }
  69. else if (config.mockSelenium) {
  70. driverProvider = new mock_1.Mock(config);
  71. exports.logWarnings('mock', config);
  72. }
  73. else {
  74. driverProvider = new local_1.Local(config);
  75. exports.logWarnings('local', config);
  76. }
  77. return driverProvider;
  78. };
  79. exports.logWarnings = (providerType, config) => {
  80. let warnInto = 'Using driver provider ' + providerType +
  81. ', but also found extra driver provider parameter(s): ';
  82. let warnList = [];
  83. if ('directConnect' !== providerType && config.directConnect) {
  84. warnList.push('directConnect');
  85. }
  86. if ('attachSession' !== providerType && 'hosted' !== providerType && config.seleniumAddress) {
  87. warnList.push('seleniumAddress');
  88. }
  89. if ('attachSession' !== providerType && config.seleniumSessionId) {
  90. warnList.push('seleniumSessionId');
  91. }
  92. if ('testObject' !== providerType && config.testObjectUser) {
  93. warnList.push('testobjectUser');
  94. }
  95. if ('testObject' !== providerType && config.testObjectKey) {
  96. warnList.push('testobjectKey');
  97. }
  98. if ('kobitonUser' !== providerType && config.kobitonUser) {
  99. warnList.push('kobitonUser');
  100. }
  101. if ('kobitonKey' !== providerType && config.kobitonKey) {
  102. warnList.push('kobitonKey');
  103. }
  104. if ('browserStack' !== providerType && config.browserstackUser) {
  105. warnList.push('browserstackUser');
  106. }
  107. if ('browserStack' !== providerType && config.browserstackKey) {
  108. warnList.push('browserstackKey');
  109. }
  110. if ('sauce' !== providerType && config.sauceUser) {
  111. warnList.push('sauceUser');
  112. }
  113. if ('sauce' !== providerType && config.sauceKey) {
  114. warnList.push('sauceKey');
  115. }
  116. if ('local' !== providerType && config.seleniumServerJar) {
  117. warnList.push('seleniumServerJar');
  118. }
  119. if ('mock' !== providerType && config.mockSelenium) {
  120. warnList.push('mockSelenium');
  121. }
  122. if ('useExistingWebDriver' !== providerType && config.seleniumWebDriver) {
  123. warnList.push('seleniumWebDriver');
  124. }
  125. if (warnList.length !== 0) {
  126. logger.warn(warnInto + warnList.join(', '));
  127. }
  128. };
  129. //# sourceMappingURL=index.js.map