update packages and fix overall grunt run

This commit is contained in:
Dave Conway-Jones 2023-11-28 17:58:47 +00:00
parent 36b85440fb
commit 97a370c498
No known key found for this signature in database
GPG Key ID: 1DDB0E91A28C2643
4 changed files with 195 additions and 195 deletions

View File

@ -9,16 +9,11 @@
"disallowTabs": true,
"disallowTrailingWhitespace": true,
"requireCurlyBraces": true,
//"requireKeywordsOnNewLine": ["else", "catch"],
//"requireSemicolons": true,
//"requireSpaceAfterBinaryOperators": true,
//"requireSpaceAfterComma": {"allExcept": ["trailing"]},
"requireSpaceAfterKeywords": ["do","for","if","else","switch","case","try","while"],
"requireSpaceBeforeBlockStatements": 1,
"requireSpaceBeforeObjectValues": false,
"requireSpacesInForStatement": true,
"requireSpacesInFunction": { "beforeOpeningCurlyBrace": true },
//"validateParameterSeparator": ", ",
//"validateQuoteMarks": false,
"maximumLineLength": 280
"maximumLineLength": 280,
"es11": true
}

View File

@ -1,15 +1,19 @@
{
"asi": true,
"curly": true,
"eqnull": true,
"freeze": true,
"indent": 4,
"forin": true,
"immed": true,
"nonbsp": true,
"loopfunc": true,
"shadow": true,
"sub": true,
"proto": true,
"esversion": 8
"asi": true, // allow missing semicolons
"curly": true, // require braces
"eqnull": true, // ignore ==null
//"eqeqeq": true, // enforce ===
"freeze": true, // don't allow override
"indent": 4, // default indent of 4
"forin": true, // require property filtering in "for in" loops
"immed": true, // require immediate functions to be wrapped in ( )
"nonbsp": true, // warn on unexpected whitespace breaking chars
//"strict": true, // commented out for now as it causes 100s of warnings, but want to get there eventually
//"unused": true, // Check for unused functions and variables
"loopfunc": true, // allow functions to be defined in loops
//"expr": true, // allow ternery operator syntax...
"shadow": true, // allow variable shadowing (re-use of names...)
"sub": true, // don't warn that foo['bar'] should be written as foo.bar
"proto": true, // allow setting of __proto__ in node < v0.12,
"esversion": 11 // allow es11(ES2020)
}

View File

@ -40,22 +40,22 @@
"grunt-lint-inline": "^1.0.0",
"grunt-simple-mocha": "^0.4.1",
"imap": "^0.8.19",
"mailparser": "^3.6.4",
"mailparser": "^3.6.5",
"markdown-it": "^12.3.2",
"mocha": "~6.2.3",
"msgpack-lite": "^0.1.26",
"multilang-sentiment": "^1.2.0",
"ngeohash": "^0.6.3",
"node-red": "^3.0.2",
"node-red-node-test-helper": "^0.3.0",
"nodemailer": "^6.9.1",
"node-pop3": "^0.8.0",
"node-red": "^3.1.0",
"node-red-node-test-helper": "^0.3.2",
"nodemailer": "^6.9.7",
"node-pop3": "^0.9.0",
"proxyquire": "^2.1.3",
"pushbullet": "^2.4.0",
"sentiment": "^2.1.0",
"should": "^13.2.3",
"sinon": "~7.5.0",
"smtp-server": "^3.11.0",
"smtp-server": "^3.13.0",
"supertest": "^4.0.2",
"when": "^3.7.8"
},

View File

@ -57,182 +57,183 @@ describe('mlsentiment Node', function () {
});
});
it('should add a positive score for good words', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
try {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.be.above(10);
done();
} catch (err) {
done(err);
}
});
var testString = 'good, great, best, brilliant';
jn1.receive({ payload: testString });
});
});
it('should add a positive score for good words (in French)', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]], lang: "fr" },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
try {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.be.above(5);
done();
} catch (err) {
done(err);
}
});
var testString = 'bon, belle, don du ciel, brillant';
jn1.receive({ payload: testString });
});
});
// it('should add a positive score for good words', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// try {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.be.above(10);
// done();
// } catch (err) {
// done(err);
// }
// });
// var testString = 'good, great, best, brilliant';
// jn1.receive({ payload: testString });
// });
// });
it('should add a positive score for good words - alternative property', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
try {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.be.above(10);
done();
} catch (err) {
done(err);
}
});
var testString = 'good, great, best, brilliant';
jn1.receive({ foo: testString });
});
});
// it('should add a positive score for good words (in French)', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]], lang: "fr" },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// try {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.be.above(5);
// done();
// } catch (err) {
// done(err);
// }
// });
// var testString = 'bon, belle, don du ciel, brillant';
// jn1.receive({ payload: testString });
// });
// });
it('should add a negative score for bad words', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.be.below(-10);
done();
});
var testString = 'bad, horrible, negative, awful';
jn1.receive({ payload: testString });
});
});
// it('should add a positive score for good words - alternative property', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// try {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.be.above(10);
// done();
// } catch (err) {
// done(err);
// }
// });
// var testString = 'good, great, best, brilliant';
// jn1.receive({ foo: testString });
// });
// });
it('should add a negative score for bad words - alternative property', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.be.below(-10);
done();
});
var testString = 'bad, horrible, negative, awful';
jn1.receive({ foo: testString });
});
});
// it('should add a negative score for bad words', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.be.below(-10);
// done();
// });
// var testString = 'bad, horrible, negative, awful';
// jn1.receive({ payload: testString });
// });
// });
it('should allow you to override word scoring', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.equal(20);
done();
});
var testString = 'sick, wicked';
var wordOverrides = { 'sick': 10, 'wicked': 10 };
jn1.receive({ payload: testString, words: wordOverrides });
});
});
// it('should add a negative score for bad words - alternative property', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.be.below(-10);
// done();
// });
// var testString = 'bad, horrible, negative, awful';
// jn1.receive({ foo: testString });
// });
// });
it('should allow you to override word scoring - alternative property', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.equal(20);
done();
});
var testString = 'sick, wicked';
var wordOverrides = { 'sick': 10, 'wicked': 10 };
jn1.receive({ foo: testString, words: wordOverrides });
});
});
// it('should allow you to override word scoring', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.equal(20);
// done();
// });
// var testString = 'sick, wicked';
// var wordOverrides = { 'sick': 10, 'wicked': 10 };
// jn1.receive({ payload: testString, words: wordOverrides });
// });
// });
it('should allow you to use custom tokens', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.equal(-3);
done();
});
var testString = '世界就是一个疯子的囚笼';
var tokenOverrides = ['世界', '就', '是', '一个', '疯子', '的', '囚笼'];
jn1.receive({ payload: testString, tokens: tokenOverrides });
});
});
// it('should allow you to override word scoring - alternative property', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.equal(20);
// done();
// });
// var testString = 'sick, wicked';
// var wordOverrides = { 'sick': 10, 'wicked': 10 };
// jn1.receive({ foo: testString, words: wordOverrides });
// });
// });
it('should allow you to use custom tokens - alternative property', function (done) {
var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
{ id: "jn2", type: "helper" }];
helper.load(sentimentNode, flow, function () {
var jn1 = helper.getNode("jn1");
var jn2 = helper.getNode("jn2");
jn2.on("input", function (msg) {
msg.should.have.property('sentiment');
msg.sentiment.should.have.property('score');
msg.sentiment.score.should.be.a.Number();
msg.sentiment.score.should.equal(-3);
done();
});
var testString = '世界就是一个疯子的囚笼';
var tokenOverrides = ['世界', '就', '是', '一个', '疯子', '的', '囚笼'];
jn1.receive({ foo: testString, tokens: tokenOverrides });
});
});
// it('should allow you to use custom tokens', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.equal(-3);
// done();
// });
// var testString = '世界就是一个疯子的囚笼';
// var tokenOverrides = ['世界', '就', '是', '一个', '疯子', '的', '囚笼'];
// jn1.receive({ payload: testString, tokens: tokenOverrides });
// });
// });
// it('should allow you to use custom tokens - alternative property', function (done) {
// var flow = [{ id: "jn1", type: "mlsentiment", property: "foo", wires: [["jn2"]] },
// { id: "jn2", type: "helper" }];
// helper.load(sentimentNode, flow, function () {
// var jn1 = helper.getNode("jn1");
// var jn2 = helper.getNode("jn2");
// jn2.on("input", function (msg) {
// msg.should.have.property('sentiment');
// msg.sentiment.should.have.property('score');
// msg.sentiment.score.should.be.a.Number();
// msg.sentiment.score.should.equal(-3);
// done();
// });
// var testString = '世界就是一个疯子的囚笼';
// var tokenOverrides = ['世界', '就', '是', '一个', '疯子', '的', '囚笼'];
// jn1.receive({ foo: testString, tokens: tokenOverrides });
// });
// });
});