Skip to content

Commit

Permalink
updated mocha-cov dependency to be custom fork that provides valuable…
Browse files Browse the repository at this point in the history
… information to coveralls, added engine info to package.json, disable styles for codeship, switched to code based pattern that is very specific since the entire es-js repo is stored withing a src directory on codeship
  • Loading branch information
Spencer Alger committed Jan 22, 2014
1 parent 9419089 commit 1d991b4
Show file tree
Hide file tree
Showing 32 changed files with 128 additions and 133 deletions.
18 changes: 7 additions & 11 deletions grunt/config/mochacov.js
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
var unitTests = ['test/unit/test_*.js'];

module.exports = {
unit: {
src: unitTests
src: 'test/unit'
},

integration_master: {
Expand All @@ -15,23 +13,21 @@ module.exports = {

// run the unit tests, and update coverage.html
make_coverage_html: {
src: unitTests,
src: 'test/unit/coverage.js',
options: {
reporter: 'html-cov',
output: 'coverage.html'
output: 'coverage.html',
instrument: false
}
},

// for use by travis
ship_coverage: {
src: unitTests,
src: 'test/unit/coverage.js',
options: {
reporter: 'mocha-lcov-reporter',
coveralls: {
serviceName: 'codeship',
serviceJobId: process.env.CI_BUILD_NUMBER,
repoToken: process.env.COVERALLS_TOKEN
}
coveralls: true,
instrument: false
}
}
};
7 changes: 3 additions & 4 deletions grunt/config/saucelabs-mocha.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
var keys = require('../../test/utils/keys');

var slk = require('../../test/utils/slk');
module.exports = {
all: {
options: {
Expand All @@ -8,8 +7,8 @@ module.exports = {
'http://127.0.0.1:8000/builds.html'
],
testname: process.env.CI_BUILD_NUMBER ? 'build_' + process.env.CI_BUILD_NUMBER : 'local_' + Date.now(),
username: keys.saucelabs_user,
key: keys.saucelabs,
username: slk.user,
key: slk.key,
browsers: [
{
browserName: 'chrome',
Expand Down
17 changes: 10 additions & 7 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,11 @@
"./test/mocks/server.js": "./test/mocks/browser_server.js",
"lodash": "./node_modules/lodash/dist/lodash.compat.js"
},
"config": {
"blanket": {
"pattern": "specified in test/unit/coverage.js"
}
},
"devDependencies": {
"mocha": "~1.14.0",
"async": "~0.2.9",
Expand Down Expand Up @@ -42,7 +47,7 @@
"grunt-contrib-compress": "~0.5.3",
"grunt-contrib-copy": "~0.4.1",
"grunt-prompt": "~0.1.2",
"grunt-mocha-cov": "~0.1.1",
"grunt-mocha-cov": "~0.2.0",
"grunt-open": "~0.2.2",
"glob": "~3.2.7",
"expect.js": "~0.2.0",
Expand All @@ -64,11 +69,9 @@
},
"scripts": {
"test": "grunt test",
"generate": "node scripts/generate",
"blanket": {
"pattern": [
"src"
]
}
"generate": "node scripts/generate"
},
"engines": {
"node" : ">=0.8 <0.11"
}
}
19 changes: 10 additions & 9 deletions scripts/_utils.sh
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
#!/usr/bin/env bash

#####
# Start or stop a group for travis
# Start a group of log output
#####
function group {
re='start:'

if [[ $1 =~ $re ]]; then
echo -e "\n\033[4m\033[1m$1\033[0m\033[0m"
if [[ $CI_NAME = "codeship" ]]; then
style='..'
reset='..'
else
echo -e "-- $1 --\n"
style='\x1b[1m\x1b[37m\x1b[4m'
reset='\x1b[24m\x1b[39m\x1b[22m'
fi

echo -en "\n\n${style}${1}${reset}\n"
}

#####
Expand All @@ -29,10 +33,8 @@ function call {

function ensure_grunt {
if [[ ! -x "`which grunt`" ]]; then
group "start:install_grunt"
echo "installing grunt-cli"
group "installing grunt"
call npm install --silent -g grunt-cli
group "end:install_grunt"
fi
}

Expand All @@ -59,7 +61,7 @@ function manage_es {
local SNAPSHOTS="$ROOT/.snapshots"
local PIDS="$ROOT/.snapshots/pids"

group "start:$DO es"
group "${DO}ing es"

if [ ! -d "$PIDS" ]; then
call mkdir -p $PIDS
Expand Down Expand Up @@ -158,5 +160,4 @@ function manage_es {
return 1
;;
esac
group "end:$DO es"
}
17 changes: 6 additions & 11 deletions scripts/ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,25 +29,23 @@ else
fi

if [[ "$NODE_UNIT" != "0" ]]; then
group "start:unit_tests"
group "running unit tests"
if [[ -n "$JENKINS" ]]; then
$MOCHA test/unit/test_*.js --reporter $MOCHA_REPORTER 2> test/junit-node-unit.xml
$MOCHA test/unit/tests/*.js --reporter $MOCHA_REPORTER 2> test/junit-node-unit.xml
if [ "$?" -gt "0" ]; then
echo "non-zero exit code: $RESULT"
cat test/junit-node-unit.xml
fi
else
_grunt jshint mochacov:unit
fi
group "end:unit_tests"
fi

if [[ "$NODE_INTEGRATION" != "0" ]]; then
group "start:generate tests"
group "generating tests"
call node scripts/generate --no-api
group "end:generate tests"

group "start:integration tests"
group "running integration tests"
if [[ -n "$JENKINS" ]]; then
# convert TESTING_BRANCH into BRANCH_SUFFIX
if [[ $TESTING_BRANCH = 'master' ]]; then
Expand Down Expand Up @@ -75,18 +73,15 @@ if [[ "$NODE_INTEGRATION" != "0" ]]; then
_grunt mochacov:integration_$TESTING_BRANCH
manage_es stop $TESTING_BRANCH $ES_RELEASE
fi
group "end:integration tests"
fi

if [[ "$BROWSER_UNIT" == "1" ]]; then
group "start:browser tests"
group "running browser tests"
_grunt browser_clients:build run:browser_test_server saucelabs-mocha
group "end:browser tests"
fi

if [[ "$COVERAGE" == "1" ]]; then
group "start:ship coverage"
group "shipping coverage"
ensure_grunt
grunt mochacov:ship_coverage
group "stop:ship coverage"
fi
25 changes: 9 additions & 16 deletions scripts/codeship.sh
Original file line number Diff line number Diff line change
@@ -1,46 +1,39 @@
#!/usr/bin/env bash

source $HOME/.nvm/nvm.sh

HERE="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
source $HERE/_utils.sh
source $HOME/.nvm/nvm.sh

case $1 in
setup)
group "start: installing nvm 0.10"
group "installing nvm 0.10"
nvm install 0.10
group "end: installing nvm 0.10"

group "start: installing nvm 0.8"
group "installing nvm 0.8"
nvm install 0.8
group "end: installing nvm 0.8"

manage_es install master
manage_es install 0.90

npm install
;;
run)
# test in node 0.8
group "start: test node 0.8"
group "test node 0.8"
nvm use 0.8
echo "rebuilding npm deps"
npm rebuild &> /dev/null
npm --silent rebuild
call ES_BRANCH=master ./scripts/ci.sh
call ES_BRANCH=0.90 ./scripts/ci.sh
group "end: test node 0.8"

# test in node 0.10
group "start: test node 0.10"
group "test node 0.10"
nvm use 0.10
echo "rebuilding npm deps"
npm rebuild &> /dev/null
npm --silent rebuild
call ES_BRANCH=master COVERAGE=1 ./scripts/ci.sh
call ES_BRANCH=0.90 ./scripts/ci.sh
group "end: test node 0.10"

# browser tests (node version irrelevant)
group "start: test browsers"
group "test browsers"
call NODE_UNIT=0 NODE_INTEGRATION=0 BROWSER_UNIT=1 ./scripts/ci.sh
group "end: test browsers"
;;
esac
2 changes: 1 addition & 1 deletion src/elasticsearch
5 changes: 5 additions & 0 deletions test/unit/coverage.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
var blanket = require("blanket")({
pattern: require('path').join(__dirname, '../../src')
});

require('./index');
3 changes: 3 additions & 0 deletions test/unit/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
require('fs').readdirSync(__dirname + '/tests').forEach(function (file) {
require(__dirname + '/tests/' + file);
});
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
describe('Logger Abstract', function () {
var expect = require('expect.js');
var sinon = require('sinon');
var Log = require('../../src/lib/log');
var LoggerAbstract = require('../../src/lib/logger');
var Log = require('../../../src/lib/log');
var LoggerAbstract = require('../../../src/lib/logger');

var parentLog;
var stub = require('../utils/auto_release_stub').make();
var stub = require('../../utils/auto_release_stub').make();

function makeLogger(parent, levels) {
return new LoggerAbstract(parent || parentLog, {
Expand All @@ -30,6 +30,6 @@ describe('Logger Abstract', function () {
});
});

require('./generic_logger_tests')(makeLogger);
require('../generic_logger_tests')(makeLogger);

});
6 changes: 3 additions & 3 deletions test/unit/test_client.js → test/unit/tests/client.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
describe('Client instances creation', function () {
var es = require('../../src/elasticsearch');
var api = require('../../src/lib/api');
var api090 = require('../../src/lib/api_0_90');
var es = require('../../../src/elasticsearch');
var api = require('../../../src/lib/api');
var api090 = require('../../../src/lib/api_0_90');
var expect = require('expect.js');
var client;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var ca = require('../../src/lib/client_action');
var ca = require('../../../src/lib/client_action');
var expect = require('expect.js');
var _ = require('lodash');
var when = require('when');
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
var ConnectionAbstract = require('../../src/lib/connection');
var Host = require('../../src/lib/host');
var ConnectionAbstract = require('../../../src/lib/connection');
var Host = require('../../../src/lib/host');
var sinon = require('sinon');
var expect = require('expect.js');
var _ = require('lodash');
var errors = require('../../src/lib/errors');
var errors = require('../../../src/lib/errors');

var stub = require('../utils/auto_release_stub').make();
var stub = require('../../utils/auto_release_stub').make();

describe('Connection Abstract', function () {
var host = new Host('localhost:9200');
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
var ConnectionPool = require('../../src/lib/connection_pool');
var Host = require('../../src/lib/host');
var errors = require('../../src/lib/errors');
var ConnectionAbstract = require('../../src/lib/connection');
var ConnectionPool = require('../../../src/lib/connection_pool');
var Host = require('../../../src/lib/host');
var errors = require('../../../src/lib/errors');
var ConnectionAbstract = require('../../../src/lib/connection');
var _ = require('lodash');
var EventEmitter = require('events').EventEmitter;
var expect = require('expect.js');
var sinon = require('sinon');
var stub = require('../utils/auto_release_stub').make();
var stub = require('../../utils/auto_release_stub').make();

function listenerCount(emitter, event) {
if (EventEmitter.listenerCount) {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
var Log = require('../../src/lib/log');
var ConsoleLogger = require('../../src/lib/loggers/console');
var Log = require('../../../src/lib/log');
var ConsoleLogger = require('../../../src/lib/loggers/console');
var sinon = require('sinon');
var expect = require('expect.js');
var parentLog;
Expand All @@ -20,11 +20,11 @@ function makeLogger(parent, levels) {
return new ConsoleLogger(parent, config);
}

var stub = require('../utils/auto_release_stub').make();
var stub = require('../../utils/auto_release_stub').make();

describe('Console Logger', function () {

require('./generic_logger_tests')(makeLogger);
require('../generic_logger_tests')(makeLogger);

it('checks before using unique logging functions, falls back to #log()', function () {
var _warning = console.warn;
Expand Down
2 changes: 1 addition & 1 deletion test/unit/test_errors.js → test/unit/tests/errors.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
var errors = require('../../src/lib/errors');
var errors = require('../../../src/lib/errors');
var expect = require('expect.js');
var _ = require('lodash');

Expand Down
Loading

0 comments on commit 1d991b4

Please sign in to comment.