karma-gb-json2js-preprocessor

1.0.1 • Public • Published

karma-gb-json2js-preprocessor

Preprocessor for converting JSON files to AngularJS constants.

Installation

The easiest way is to keep karma-gb-json2js-preprocessor as a devDependency in your package.json. You can simple do it by:

npm install karma-gb-json2js-preprocessor --save-dev

Configuration

// karma.conf.js
module.exports = function(config) {
  config.set({
    preprocessors: {
      '**/*.html': ['ng-html2js'],
      '**/*.json': ['gb-json2js']
    },
 
    plugins: [
      'karma-gb-json2js-preprocessor'
    ],
 
    files: [
      'test/fixture/*.js',
      '*.html'
    ],
 
    gbJson2JsPreprocessor: {
      // The module the json will be loaded into, defaults to "mocks"
      //moduleName: 'foo'
    }
  });
};

How does it work ?

This preprocessor converts JSON files into Angular constants and puts them in separate Angular modules; each named the same as the source JSON file and generates Angular modules.

For instance this test/fixture/loginService-mocks.json ...

{
    prop: val
}

... with the configuration given above will be converted into:

angular.module('mocks', []).constant('LOGIN_SERVICE_MOCKS', {
    prop: 'val'
});

Inject json fixture into your test case:

describe('me', function(){
    beforeEach(module('mocks'));
 
    it('should not fail', function() {
        var LOGIN_SERVICE_MOCKS;
        inject(function (_LOGIN_SERVICE_MOCKS_) {
            LOGIN_SERVICE_MOCKS = _LOGIN_SERVICE_MOCKS_;
        });
 
        expect(LOGIN_SERVICE_MOCKS).toEqual({
            prop: 'val'
        });
    });
 
});

Contributing

Before sending a pull request, run grunt in terminal to make sure all tests pass. To continuously run tests during development, run karma start.

For more information on Karma see the homepage.

Versions

Current Tags

  • Version
    Downloads (Last 7 Days)
    • Tag
  • 1.0.1
    2
    • latest

Version History

  • Version
    Downloads (Last 7 Days)
    • Published
  • 1.0.1
    2
  • 1.0.0
    1

Package Sidebar

Install

npm i karma-gb-json2js-preprocessor

Weekly Downloads

0

Version

1.0.1

License

MIT

Last publish

Collaborators

  • adruzhkin-gbi
  • anton.shakhlovich
  • artem_konstantinov
  • andzinchenko
  • yberkut-gbi
  • romangbi
  • francoisvongue
  • gleb.bondarenko.gb
  • pavel-shakhlovich
  • jonapgar-groupby
  • jesseevitts
  • owengbi
  • ajaya-subudhi
  • mykola_bova
  • kseniya.kondrashevich
  • yanishgbi
  • jasonwelsh
  • groupby-ops
  • groupby-ci
  • groupbyops
  • daniel-moniz-gbi
  • johanntutorgbi
  • dmytro-kyiashko
  • roman.lis