 
     # TODO: This should really be parallel on both platforms, however our
     # fixtures step on each others toes currently.
-    if process.platform in ['darwin', 'linux']
+    if concurrency is 1 or process.platform is 'win32'
+      method = async.series
+    else if process.platform in ['darwin', 'linux']
       method = async.parallel
-    else if process.platform is 'win32'
-      method = async.series
 
     method [runCoreSpecs, runPackageSpecs], (error, results) ->
       [coreSpecFailed, failedPackages] = results

      continue unless isAtomPackage(packagePath)
      packageSpecQueue.push(packagePath)

    packageSpecQueue.concurrency = concurrency - 1
    packageSpecQueue.drain = -> callback(null, failedPackages)

  runCoreSpecs = (callback) ->

_ = require 'underscore-plus'
async = require 'async'

if process.env.TRAVIS
  concurrency = 1
else
  concurrency = 2

module.exports = (grunt) ->
  {isAtomPackage, spawn} = require('./task-helpers')(grunt)
