Added files for Juan
This commit is contained in:
274
ExACTRegressionScripts/node_modules/loglevel/vendor/grunt-template-jasmine-requirejs/README.md
generated
vendored
Normal file
274
ExACTRegressionScripts/node_modules/loglevel/vendor/grunt-template-jasmine-requirejs/README.md
generated
vendored
Normal file
@@ -0,0 +1,274 @@
|
||||
# FORK OF grunt-template-jasmine-requirejs
|
||||
|
||||
This is a local fork of the grunt-template-jasmine-requirejs package, which is no longer maintained. It is based on commit 0d5f278c19b997a19bd894d354078b64b0453698 from https://github.com/cloudchen/grunt-template-jasmine-requirejs.
|
||||
|
||||
This copy includes slight tweaks in order to maintain compatibility with the versions of Grunt and other tools in use by loglevel. All changes are marked by `LOGLEVEL-FORK:` and `END LOGLEVEL-FORK` comments, e.g:
|
||||
|
||||
```js
|
||||
// LOGLEVEL-FORK: Work with current versions of lodash.
|
||||
return _.template("xyz")({ data: "ok" });
|
||||
// END LOGLEVEL-FORK
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
RequireJS template for Jasmine unit tests [](https://travis-ci.org/cloudchen/grunt-template-jasmine-requirejs)
|
||||
-----------------------------------------
|
||||
|
||||
## Installation
|
||||
By default, this template works with Jasmine 2.x
|
||||
```
|
||||
npm install grunt-template-jasmine-requirejs --save-dev
|
||||
```
|
||||
|
||||
## Support for both Jasmine 1.x and 2.x
|
||||
You'd install `~0.1` version of this template if your test specs are based on Jasmine 1.x
|
||||
```
|
||||
npm install grunt-template-jasmine-requirejs@~0.1 --save-dev
|
||||
```
|
||||
|
||||
## Options
|
||||
|
||||
### vendor
|
||||
Type: `String|Array`
|
||||
|
||||
Works same as original. But they are loaded **before** require.js script file
|
||||
|
||||
### helpers
|
||||
Type: `String|Array`
|
||||
|
||||
Works same as original. But they are loaded **after** require.js script file
|
||||
|
||||
## Template Options
|
||||
|
||||
### templateOptions.version
|
||||
Type: `String`
|
||||
Options: `2.0.0` to `2.1.10` or path to a local file system version(relative to Gruntfile.js). Absolute path is allowed as well. Default: latest requirejs version included
|
||||
|
||||
The version of requirejs to use.
|
||||
|
||||
### templateOptions.requireConfigFile
|
||||
Type `String` or `Array`
|
||||
|
||||
This can be a single path to a require config file or an array of paths to multiple require config files. The configuration is extracted from the require.config({}) call(s) in the file, and is passed into the require.config({}) call in the template.
|
||||
|
||||
Files are loaded from left to right (using a deep merge). This is so you can have a main config and then override specific settings in additional config files (like a test config) without having to duplicate entire requireJS configs.
|
||||
|
||||
If `requireConfig` is also specified then it will be deep-merged onto the settings specified by this directive.
|
||||
|
||||
### templateOptions.requireConfig
|
||||
Type: `Object`
|
||||
|
||||
This object is `JSON.stringify()`-ed ( **support serialize Function object** ) into the template and passed into `var require` variable
|
||||
|
||||
If `requireConfigFile` is specified then it will be loaded first and the settings specified by this directive will be deep-merged onto those.
|
||||
|
||||
|
||||
## Sample usage
|
||||
|
||||
```js
|
||||
// Example configuration using a single requireJS config file
|
||||
grunt.initConfig({
|
||||
connect: {
|
||||
test : {
|
||||
port : 8000
|
||||
}
|
||||
},
|
||||
jasmine: {
|
||||
taskName: {
|
||||
src: 'src/**/*.js',
|
||||
options: {
|
||||
specs: 'spec/*Spec.js',
|
||||
helpers: 'spec/*Helper.js',
|
||||
host: 'http://127.0.0.1:8000/',
|
||||
template: require('grunt-template-jasmine-requirejs'),
|
||||
templateOptions: {
|
||||
requireConfigFile: 'src/main.js'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
```js
|
||||
// Example configuration using an inline requireJS config
|
||||
grunt.initConfig({
|
||||
connect: {
|
||||
test : {
|
||||
port : 8000
|
||||
}
|
||||
},
|
||||
jasmine: {
|
||||
taskName: {
|
||||
src: 'src/**/*.js',
|
||||
options: {
|
||||
specs: 'spec/*Spec.js',
|
||||
helpers: 'spec/*Helper.js',
|
||||
host: 'http://127.0.0.1:8000/',
|
||||
template: require('grunt-template-jasmine-requirejs'),
|
||||
templateOptions: {
|
||||
requireConfig: {
|
||||
baseUrl: 'src/',
|
||||
paths: {
|
||||
"jquery": "path/to/jquery"
|
||||
},
|
||||
shim: {
|
||||
'foo': {
|
||||
deps: ['bar'],
|
||||
exports: 'Foo',
|
||||
init: function (bar) {
|
||||
return this.Foo.noConflict();
|
||||
}
|
||||
}
|
||||
},
|
||||
deps: ['jquery'],
|
||||
callback: function($) {
|
||||
// do initialization stuff
|
||||
/*
|
||||
|
||||
*/
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
|
||||
|
||||
```js
|
||||
// Example using a base requireJS config file and specifying
|
||||
// overrides with an inline requireConfig file.
|
||||
grunt.initConfig({
|
||||
connect: {
|
||||
test : {
|
||||
port : 8000
|
||||
}
|
||||
},
|
||||
jasmine: {
|
||||
taskName: {
|
||||
src: 'src/**/*.js',
|
||||
options: {
|
||||
specs: 'spec/*Spec.js',
|
||||
helpers: 'spec/*Helper.js',
|
||||
host: 'http://127.0.0.1:8000/',
|
||||
template: require('grunt-template-jasmine-requirejs'),
|
||||
templateOptions: {
|
||||
requireConfigFile: 'src/main.js',
|
||||
requireConfig: {
|
||||
baseUrl: 'overridden/baseUrl',
|
||||
shim: {
|
||||
// foo will override the 'foo' shim in main.js
|
||||
'foo': {
|
||||
deps: ['bar'],
|
||||
exports: 'Foo'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
```js
|
||||
// Example using a multiple requireJS config files. Useful for
|
||||
// testing.
|
||||
grunt.initConfig({
|
||||
connect: {
|
||||
test : {
|
||||
port : 8000
|
||||
}
|
||||
},
|
||||
jasmine: {
|
||||
taskName: {
|
||||
src: 'src/**/*.js',
|
||||
options: {
|
||||
specs: 'spec/*Spec.js',
|
||||
helpers: 'spec/*Helper.js',
|
||||
host: 'http://127.0.0.1:8000/',
|
||||
template: require('grunt-template-jasmine-requirejs'),
|
||||
templateOptions: {
|
||||
requireConfigFile: ['src/config.js', 'spec/config.js']
|
||||
requireConfig: {
|
||||
baseUrl: 'overridden/baseUrl'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
```
|
||||
|
||||
|
||||
*Note* the usage of the 'connect' task configuration. You will need to use a task like
|
||||
[grunt-contrib-connect][] if you need to test your tasks on a running server.
|
||||
|
||||
[grunt-contrib-connect]: https://github.com/gruntjs/grunt-contrib-connect
|
||||
|
||||
## RequireJS notes
|
||||
|
||||
If you end up using this template, it's worth looking at the
|
||||
[source]() in order to familiarize yourself with how it loads your files. The load process
|
||||
consists of a series of nested `require` blocks, incrementally loading your source and specs:
|
||||
|
||||
```js
|
||||
require([*YOUR SOURCE*], function() {
|
||||
require([*YOUR SPECS*], function() {
|
||||
require([*GRUNT-CONTRIB-JASMINE FILES*], function() {
|
||||
// at this point your tests are already running.
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
If "callback" function is defined in requireConfig, above code will be injected to the end of body of "callback" definition
|
||||
```js
|
||||
templateOptions: {
|
||||
callback: function() {
|
||||
// suppose we define a module here
|
||||
define("config", {
|
||||
"endpoint": "/path/to/endpoint"
|
||||
})
|
||||
}
|
||||
}
|
||||
```
|
||||
Generated runner page with require configuration looks like:
|
||||
```js
|
||||
var require = {
|
||||
...
|
||||
callback: function() {
|
||||
// suppose we define a module here
|
||||
define("config", {
|
||||
"endpoint": "/path/to/endpoint"
|
||||
})
|
||||
|
||||
require([*YOUR SOURCE*], function() {
|
||||
require([*YOUR SPECS*], function() {
|
||||
require([*GRUNT-CONTRIB-JASMINE FILES*], function() {
|
||||
// at this point your tests are already running.
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
...
|
||||
}
|
||||
```
|
||||
This automation can help to avoid unexpected dependency order issue
|
||||
|
||||
## Change Log
|
||||
* v0.2.3 Fixed path issues [#77](https://github.com/cloudchen/grunt-template-jasmine-requirejs/pull/77)
|
||||
* v0.2.2 Fixed regression which casued by [#65](https://github.com/cloudchen/grunt-template-jasmine-requirejs/pull/65)
|
||||
* v0.2.1 Fixed [#65](https://github.com/cloudchen/grunt-template-jasmine-requirejs/pull/65)
|
||||
* v0.2.0 Added Jasmine 2 support
|
||||
* v0.1.10 03.14.14, Fixed [#53](https://github.com/cloudchen/grunt-template-jasmine-requirejs/pull/53), [#52](https://github.com/cloudchen/grunt-template-jasmine-requirejs/issues/52), [#46](https://github.com/cloudchen/grunt-template-jasmine-requirejs/issues/46), [#36](https://github.com/cloudchen/grunt-template-jasmine-requirejs/issues/36) wrong path error when runner outfile is specified at elsewhere
|
||||
* v0.1.9, 02.04.14, [#57](https://github.com/cloudchen/grunt-template-jasmine-requirejs/issues/57) prevents conflict with `grunt-contrib-jasmine` 0.6.x, added requirejs 2.1.9 & 2.1.10
|
||||
|
||||
### Authors / Maintainers
|
||||
|
||||
- Jarrod Overson (@jsoverson)
|
||||
- Cloud Chen (@cloudchen)
|
||||
Reference in New Issue
Block a user