Skip to content

Commit

Permalink
feat(Effects): Introduce new Effects testing module
Browse files Browse the repository at this point in the history
  • Loading branch information
MikeRyanDev committed Jul 12, 2017
1 parent e2b9e8f commit f7b2d94
Show file tree
Hide file tree
Showing 6 changed files with 62 additions and 0 deletions.
6 changes: 6 additions & 0 deletions modules/effects/testing/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
@ngrx/effects/testing
=======

The sources for this package are in the main [ngrx/platform](https://github.com/ngrx/platform) repo. Please file issues and pull requests against that repo.

License: MIT
1 change: 1 addition & 0 deletions modules/effects/testing/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from './src/testing';
7 changes: 7 additions & 0 deletions modules/effects/testing/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"name": "@ngrx/effects/testing",
"typings": "../testing.d.ts",
"main": "../bundles/effects-testing.umd.js",
"module": "../@ngrx/effects/testing.es5.js",
"es2015": "../@ngrx/effects/testing.js"
}
13 changes: 13 additions & 0 deletions modules/effects/testing/rollup.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
export default {
entry: './dist/effects/@ngrx/effects/testing.es5.js',
dest: './dist/effects/bundles/effects-testing.umd.js',
format: 'umd',
exports: 'named',
moduleName: 'ngrx.effects.testing',
globals: {
'@angular/core': 'ng.core',
'@ngrx/effects': 'ngrx.effects',
'rxjs/Observable': 'Rx',
'rxjs/observable/defer': 'Rx.Observable.defer',
}
}
20 changes: 20 additions & 0 deletions modules/effects/testing/src/testing.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import { Provider } from '@angular/core';
import { Actions } from '@ngrx/effects';
import { Observable } from 'rxjs/Observable';
import { defer } from 'rxjs/observable/defer';


export function provideMockActions(source: Observable<any>): Provider;
export function provideMockActions(factory: () => Observable<any>): Provider;
export function provideMockActions(factoryOrSource: (() => Observable<any>) | Observable<any>): Provider {
return {
provide: Actions,
useFactory: (): Observable<any> => {
if (typeof factoryOrSource === 'function') {
return defer(factoryOrSource);
}

return factoryOrSource;
},
};
}
15 changes: 15 additions & 0 deletions modules/effects/testing/tsconfig-build.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"extends": "../tsconfig-build",
"compilerOptions": {
"paths": {
"@ngrx/store": ["../../dist/packages/store"],
"@ngrx/effects": ["../../dist/packages/effects"]
}
},
"files": [
"index.ts"
],
"angularCompilerOptions": {
"strictMetadataEmit": true
}
}

0 comments on commit f7b2d94

Please sign in to comment.