sseletskyy
2/6/2016 - 7:10 AM

JSPM + AVA

JSPM + AVA

import queryString from 'query-string';

export default class Query {
  static stringify(data) {
    return queryString.stringify(data);
  }
}
import test from 'ava';
import Query from './query';

test(t => {
  let res = Query.stringify({
    hello: 'world'
  });

  t.is('hello=world', res);
});
{
  "name": "ava-test",
  "version": "1.0.0",
  "scripts": {
    "postinstall": "jspm i -y",
    "test": "ava"
  },
  "devDependencies": {
    "ava": "^0.11.0",
    "glob": "^6.0.4",
    "jspm": "^0.16.27"
  },
  "jspm": {
    "dependencies": {
      "query-string": "npm:query-string@^3.0.0"
    },
    "devDependencies": {
      "babel": "npm:babel-core@^5.8.24",
      "babel-runtime": "npm:babel-runtime@^5.8.24",
      "core-js": "npm:core-js@^1.1.4"
    }
  },
  "ava": {
    "files": [
      "./query-test.js"
    ],
    "require": [
      "babel-core/register",
      "./jspm-loader.js"
    ]
  }
}
'use strict';

const glob = require('glob');
const Module = require('module');
const load = Module._load;
Module._load = (name, m) => {
  try {
    return load(name, m);
  } catch (e) {
    let files = glob(__dirname + '/jspm_packages/**/' + name + '*/', {sync: true});
    if (files.length > 0) return load(files[0], m);
  }
};
{
  "presets": ["es2015"]
}
  1. Download zip.
  2. npm install.
  3. npm test.