diff options
Diffstat (limited to 'lib/jasmine-jstd-adapter/JasmineAdapter.js')
| -rw-r--r-- | lib/jasmine-jstd-adapter/JasmineAdapter.js | 198 | 
1 files changed, 0 insertions, 198 deletions
diff --git a/lib/jasmine-jstd-adapter/JasmineAdapter.js b/lib/jasmine-jstd-adapter/JasmineAdapter.js deleted file mode 100644 index 8dee1ee1..00000000 --- a/lib/jasmine-jstd-adapter/JasmineAdapter.js +++ /dev/null @@ -1,198 +0,0 @@ -/** - * @fileoverview Jasmine JsTestDriver Adapter. - * @author misko@hevery.com (Misko Hevery) - */ -(function(window) { -  var rootDescribes = new Describes(window); -  var describePath = []; -  rootDescribes.collectMode(); - -  var JASMINE_TYPE = 'jasmine test case'; -  TestCase('Jasmine Adapter Tests', null, JASMINE_TYPE); - -  var jasminePlugin = { -      name:'jasmine', - -      getTestRunsConfigurationFor: function(testCaseInfos, expressions, testRunsConfiguration) { -        for (var i = 0; i < testCaseInfos.length; i++) { -          if (testCaseInfos[i].getType() == JASMINE_TYPE) { -            testRunsConfiguration.push(new jstestdriver.TestRunConfiguration(testCaseInfos[i], [])); -          } -        } -        return false; -      }, - -      runTestConfiguration: function(testRunConfiguration, onTestDone, onTestRunConfigurationComplete){ -        if (testRunConfiguration.getTestCaseInfo().getType() != JASMINE_TYPE) return false; - -        var jasmineEnv = jasmine.currentEnv_ = new jasmine.Env(); -        rootDescribes.playback(); -        var specLog = jstestdriver.console.log_ = []; -        var start; -        jasmineEnv.specFilter = function(spec) { -          return rootDescribes.isExclusive(spec); -        }; -        jasmineEnv.reporter = { -          log: function(str){ -            specLog.push(str); -          }, - -          reportRunnerStarting: function(runner) { }, - -          reportSpecStarting: function(spec) { -            specLog = jstestdriver.console.log_ = []; -            start = new Date().getTime(); -          }, - -          reportSpecResults: function(spec) { -            var suite = spec.suite; -            var results = spec.results(); -            if (results.skipped) return; -            var end = new Date().getTime(); -            var messages = []; -            var resultItems = results.getItems(); -            var state = 'passed'; -            for ( var i = 0; i < resultItems.length; i++) { -              if (!resultItems[i].passed()) { -                state = resultItems[i].message.match(/AssertionError:/) ? 'error' : 'failed'; -                messages.push({ -                  message: resultItems[i].toString(), -                  name: resultItems[i].trace.name, -                  stack: formatStack(resultItems[i].trace.stack) -              }); -              } -            } -            onTestDone( -              new jstestdriver.TestResult( -                suite.getFullName(), -                spec.description, -                state, -                jstestdriver.angular.toJson(messages), -                specLog.join('\n'), -                end - start)); -          }, - -          reportSuiteResults: function(suite) {}, - -          reportRunnerResults: function(runner) { -            onTestRunConfigurationComplete(); -          } -        }; -        jasmineEnv.execute(); -        return true; -      }, - -      onTestsFinish: function(){ -        jasmine.currentEnv_ = null; -        rootDescribes.collectMode(); -      } -  }; -  jstestdriver.pluginRegistrar.register(jasminePlugin); - -  function formatStack(stack) { -    var lines = (stack||'').split(/\r?\n/); -    var frames = []; -    for (i = 0; i < lines.length; i++) { -      if (!lines[i].match(/\/jasmine[\.-]/)) { -        frames.push(lines[i].replace(/https?:\/\/\w+(:\d+)?\/test\//, '').replace(/^\s*/, '      ')); -      } -    } -    return frames.join('\n'); -  } - -  function noop(){} -  function Describes(window){ -    var describes = {}; -    var beforeEachs = {}; -    var afterEachs = {}; -    // Here we store: -    // 0: everyone runs -    // 1: run everything under ddescribe -    // 2: run only iits (ignore ddescribe) -    var exclusive = 0; -    var collectMode = true; -    intercept('describe', describes); -    intercept('xdescribe', describes); -    intercept('beforeEach', beforeEachs); -    intercept('afterEach', afterEachs); - -    function intercept(functionName, collection){ -      window[functionName] = function(desc, fn){ -        if (collectMode) { -          collection[desc] = function(){ -            jasmine.getEnv()[functionName](desc, fn); -          }; -        } else { -          jasmine.getEnv()[functionName](desc, fn); -        } -      }; -    } -    window.ddescribe = function(name, fn){ -      if (exclusive < 1) { -        exclusive = 1; // run ddescribe only -      } -      window.describe(name, function(){ -        var oldIt = window.it; -        window.it = function(name, fn){ -          if (fn) fn.exclusive = 1; // run anything under ddescribe -          oldIt(name, fn); -        }; -        try { -          fn.call(this); -        } finally { -          window.it = oldIt; -        }; -      }); -    }; -    window.iit = function(name, fn){ -      exclusive = fn.exclusive = 2; // run only iits -      jasmine.getEnv().it(name, fn); -    }; - - -    this.collectMode = function() { -      collectMode = true; -      exclusive = 0; // run everything -    }; -    this.playback = function(){ -      collectMode = false; -      playback(beforeEachs); -      playback(afterEachs); -      playback(describes); - -      function playback(set) { -        for ( var name in set) { -          set[name](); -        } -      } -    }; - -    this.isExclusive = function(spec) { -      if (exclusive) { -        var blocks = spec.queue.blocks; -        for ( var i = 0; i < blocks.length; i++) { -          if (blocks[i].func.exclusive >= exclusive) { -            return true; -          } -        } -        return false; -      } -      return true; -    }; -  } - -})(window); - -// Patch Jasmine for proper stack traces -jasmine.Spec.prototype.fail = function (e) { -  var expectationResult = new jasmine.ExpectationResult({ -    passed: false, -    message: e ? jasmine.util.formatException(e) : 'Exception' -  }); -  // PATCH -  if (e) { -    expectationResult.trace = e; -  } -  this.results_.addResult(expectationResult); -}; -  | 
