2 * helpers.js: Test helpers for node-loggly
4 * (C) 2010 Nodejitsu Inc.
9 var fs = require('fs'),
10 util = require('util'),
11 path = require('path'),
12 vows = require('vows'),
13 assert = require('assert'),
14 loggly = require('../lib/loggly');
16 var helpers = exports;
18 helpers.validConfig = function (config) {
20 && config.subdomain !== 'test-subdomain'
22 && config.auth.username !== 'test-username'
23 && config.auth.password !== 'test-password'
26 && config.inputs.test_json;
29 helpers.loadConfig = function () {
31 var configFile = path.join(__dirname, 'data', 'test-config.json'),
32 stats = fs.statSync(configFile)
33 config = JSON.parse(fs.readFileSync(configFile).toString());
35 if (!helpers.validConfig(config)) {
36 util.puts('Config file test-config.json must be updated with valid data before running tests');
40 helpers.config = config || {}
44 util.puts('Error parsing test-config.json');
45 ex.stack.split('\n').forEach(function (line) {
53 helpers.assertInput = function (input) {
54 assert.instanceOf(input, loggly.Input);
55 assert.isNotNull(input.id);
56 assert.isNotNull(input.name);
57 assert.isNotNull(input.service);
58 assert.isNotNull(input.create);
59 assert.isNotNull(input.discover);
60 assert.isNotNull(input.discoverTime);
61 assert.isNotNull(input.description);
64 helpers.assertDevice = function (device) {
65 assert.instanceOf(device, loggly.Device);
66 assert.isNotNull(device.id);
67 assert.isNotNull(device.input);
68 assert.isNotNull(device.ipAddress);
69 assert.isNotNull(device.launched);
70 assert.isNotNull(device.resourceUri);
73 helpers.assertSearch = function (err, results) {
75 assert.isObject(results);
76 assert.isTrue(typeof results.data !== 'undefined');
77 assert.isTrue(typeof results.numFound !== 'undefined');
78 assert.isTrue(typeof results.context !== 'undefined');