karma.sauce.config.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. var assign = require('object-assign')
  2. var base = require('./karma.base.config.js')
  3. /**
  4. * Having too many tests running concurrently on saucelabs
  5. * causes timeouts and errors, so we have to run them in
  6. * smaller batches.
  7. */
  8. var batches = [
  9. // the cool kids
  10. {
  11. sl_chrome: {
  12. base: 'SauceLabs',
  13. browserName: 'chrome',
  14. platform: 'Windows 7'
  15. },
  16. sl_firefox: {
  17. base: 'SauceLabs',
  18. browserName: 'firefox'
  19. },
  20. sl_mac_safari: {
  21. base: 'SauceLabs',
  22. browserName: 'safari',
  23. platform: 'OS X 10.10'
  24. }
  25. },
  26. // ie family
  27. {
  28. sl_ie_9: {
  29. base: 'SauceLabs',
  30. browserName: 'internet explorer',
  31. platform: 'Windows 7',
  32. version: '9'
  33. },
  34. sl_ie_10: {
  35. base: 'SauceLabs',
  36. browserName: 'internet explorer',
  37. platform: 'Windows 8',
  38. version: '10'
  39. },
  40. sl_ie_11: {
  41. base: 'SauceLabs',
  42. browserName: 'internet explorer',
  43. platform: 'Windows 8.1',
  44. version: '11'
  45. }
  46. },
  47. // mobile
  48. {
  49. sl_ios_safari: {
  50. base: 'SauceLabs',
  51. browserName: 'iphone',
  52. platform: 'OS X 10.9',
  53. version: '7.1'
  54. },
  55. sl_android: {
  56. base: 'SauceLabs',
  57. browserName: 'android',
  58. platform: 'Linux',
  59. version: '4.2'
  60. }
  61. }
  62. ]
  63. module.exports = function (config) {
  64. var batch = batches[process.argv[4] || 0]
  65. config.set(assign(base, {
  66. browsers: Object.keys(batch),
  67. customLaunchers: batch,
  68. reporters: ['progress', 'saucelabs'],
  69. sauceLabs: {
  70. testName: 'Vue.js unit tests',
  71. recordScreenshots: false,
  72. build: process.env.CIRCLE_BUILD_NUM || process.env.SAUCE_BUILD_ID || Date.now()
  73. },
  74. // mobile emulators are really slow
  75. captureTimeout: 300000,
  76. browserNoActivityTimeout: 300000
  77. }))
  78. }