fix jshint issues

codeql
Yeiniel Suárez Sosa 5 years ago committed by Yeiniel Suarez Sosa
parent 823a327881
commit 30e89c0393
No known key found for this signature in database
GPG Key ID: E2CFACE611B42B6C
  1. 11
      .jshintrc
  2. 3
      src/js/connection.js
  3. 50
      test/unit/filters.js
  4. 30
      test/unit/plugins.js

@ -1,11 +1,20 @@
{
"browser": true,
"esversion": 6,
"node": true,
"devel": true,
"globals": {
"angular": false,
"weeChat": false,
"_": false,
"Notification": false,
"Favico": false
"Favico": false,
"linkifyStr": false,
"renderMathInElement": false,
"describe": false,
"it": false,
"expect": false,
"beforeEach": false,
"escape": true
}
}

@ -18,6 +18,7 @@ export const connectionFactory = ['$rootScope', '$log', 'handlers', 'models', 's
var connectionData = [];
var reconnectTimer;
var handleClose;
// Global connection lock to prevent multiple connections from being opened
var locked = false;
@ -402,7 +403,7 @@ export const connectionFactory = ['$rootScope', '$log', 'handlers', 'models', 's
handleWrongPassword();
};
var handleClose = function (evt) {
handleClose = function (evt) {
if (ssl && evt && evt.code === 1006) {
// A password error doesn't trigger onerror, but certificate issues do. Check time of last error.
if (typeof $rootScope.lastError !== "undefined" && (Date.now() - $rootScope.lastError) < 1000) {

@ -12,19 +12,19 @@ describe('Filters', function() {
$provide.value('version', 'TEST_VER');
}));*/
it('has an irclinky filter', inject(function($filter) {
it('has an irclinky filter', angular.mock.inject(function($filter) {
expect($filter('irclinky')).not.toBeNull();
}));
describe('conditionalLinkify', function() {
it('should create links from an url', inject(function($filter) {
it('should create links from an url', angular.mock.inject(function($filter) {
var url = 'asdf https://a.example.com/wiki/asdf_qwer_(rivi%C3%A8re) Some text.',
link = 'asdf <a href="https://a.example.com/wiki/asdf_qwer_(rivi%C3%A8re)" target="_blank" rel="noopener noreferrer">https://a.example.com/wiki/asdf_qwer_(rivi%C3%A8re)</a> Some text.',
result = $filter('conditionalLinkify')(url);
expect(result).toEqual(link);
}));
it('should not make emails into links', inject(function($filter) {
it('should not make emails into links', angular.mock.inject(function($filter) {
var url = 'asdf@gmail.com',
link = 'asdf@gmail.com',
result = $filter('conditionalLinkify')(url);
@ -33,19 +33,19 @@ describe('Filters', function() {
});
describe('irclinky', function() {
it('should not mess up text', inject(function(irclinkyFilter) {
it('should not mess up text', angular.mock.inject(function(irclinkyFilter) {
expect(irclinkyFilter('foo')).toEqual('foo');
}));
it('should linkify IRC channels', inject(function(irclinkyFilter) {
it('should linkify IRC channels', angular.mock.inject(function(irclinkyFilter) {
expect(irclinkyFilter('#foo')).toEqual('<a href="#" onclick="openBuffer(\'#foo\');">#foo</a>');
}));
it('should not mess up IRC channels surrounded by HTML entities', inject(function(irclinkyFilter) {
it('should not mess up IRC channels surrounded by HTML entities', angular.mock.inject(function(irclinkyFilter) {
expect(irclinkyFilter('<"#foo">')).toEqual('<"<a href="#" onclick="openBuffer(\'#foo">\');">#foo"></a>');
}));
it('should not touch links created by `linky`', inject(function($filter, DOMfilterFilter) {
it('should not touch links created by `linky`', angular.mock.inject(function($filter, DOMfilterFilter) {
var url = 'http://foo.bar/#baz',
link = $filter('conditionalLinkify')(url),
result = DOMfilterFilter(link, 'irclinky').$$unwrapTrustedValue();
@ -54,59 +54,59 @@ describe('Filters', function() {
});
describe('inlinecolour', function() {
it('should not mess up normal text', inject(function(inlinecolourFilter) {
it('should not mess up normal text', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('foo')).toEqual('foo');
expect(inlinecolourFilter('test #foobar baz')).toEqual('test #foobar baz');
}));
it('should detect inline colours in #rrggbb format', inject(function(inlinecolourFilter) {
it('should detect inline colours in #rrggbb format', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('#123456')).toEqual('#123456 <div class="colourbox" style="background-color:#123456"></div>');
expect(inlinecolourFilter('#aabbcc')).toEqual('#aabbcc <div class="colourbox" style="background-color:#aabbcc"></div>');
}));
it('should not detect inline colours in #rgb format', inject(function(inlinecolourFilter) {
it('should not detect inline colours in #rgb format', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('#123')).toEqual('#123');
expect(inlinecolourFilter('#abc')).toEqual('#abc');
}));
it('should detect inline colours in rgb(12,34,56) and rgba(12,34,56,0.78) format', inject(function(inlinecolourFilter) {
it('should detect inline colours in rgb(12,34,56) and rgba(12,34,56,0.78) format', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('rgb(1,2,3)')).toEqual('rgb(1,2,3) <div class="colourbox" style="background-color:rgb(1,2,3)"></div>');
expect(inlinecolourFilter('rgb(1,2,3);')).toEqual('rgb(1,2,3); <div class="colourbox" style="background-color:rgb(1,2,3);"></div>');
expect(inlinecolourFilter('rgba(1,2,3,0.4)')).toEqual('rgba(1,2,3,0.4) <div class="colourbox" style="background-color:rgba(1,2,3,0.4)"></div>');
expect(inlinecolourFilter('rgba(255,123,0,0.5);')).toEqual('rgba(255,123,0,0.5); <div class="colourbox" style="background-color:rgba(255,123,0,0.5);"></div>');
}));
it('should tolerate whitespace in between numbers in rgb/rgba colours', inject(function(inlinecolourFilter) {
it('should tolerate whitespace in between numbers in rgb/rgba colours', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('rgb( 1\t, 2 , 3 )')).toEqual('rgb( 1\t, 2 , 3 ) <div class="colourbox" style="background-color:rgb( 1\t, 2 , 3 )"></div>');
}));
it('should handle multiple and mixed occurrences of colour values', inject(function(inlinecolourFilter) {
it('should handle multiple and mixed occurrences of colour values', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('rgb(1,2,3) #123456')).toEqual('rgb(1,2,3) <div class="colourbox" style="background-color:rgb(1,2,3)"></div> #123456 <div class="colourbox" style="background-color:#123456"></div>');
expect(inlinecolourFilter('#f00baa #123456 #234567')).toEqual('#f00baa <div class="colourbox" style="background-color:#f00baa"></div> #123456 <div class="colourbox" style="background-color:#123456"></div> #234567 <div class="colourbox" style="background-color:#234567"></div>');
expect(inlinecolourFilter('rgba(1,2,3,0.4) foorgb(50,100,150)')).toEqual('rgba(1,2,3,0.4) <div class="colourbox" style="background-color:rgba(1,2,3,0.4)"></div> foorgb(50,100,150) <div class="colourbox" style="background-color:rgb(50,100,150)"></div>');
}));
it('should not replace HTML escaped &#123456;', inject(function(inlinecolourFilter) {
it('should not replace HTML escaped &#123456;', angular.mock.inject(function(inlinecolourFilter) {
expect(inlinecolourFilter('&#123456;')).toEqual('&#123456;');
}));
});
describe('DOMfilter', function() {
it('should run a filter on all text nodes', inject(function(DOMfilterFilter) {
it('should run a filter on all text nodes', angular.mock.inject(function(DOMfilterFilter) {
var dom = 'a<p>b<i>c<b>d</b>e<b>f</b>g</i>h</p>i',
expected = '<span>A</span><p><span>B</span><i><span>C</span><b><span>D</span></b><span>E</span><b><span>F</span></b><span>G</span></i><span>H</span></p><span>I</span>',
result = DOMfilterFilter(dom, 'uppercase').$$unwrapTrustedValue();
expect(result).toEqual(expected);
}));
it('should pass additional arguments to the filter', inject(function(DOMfilterFilter) {
it('should pass additional arguments to the filter', angular.mock.inject(function(DOMfilterFilter) {
var dom = '1<p>2</p>3.14159265',
expected = '<span>1.00</span><p><span>2.00</span></p><span>3.14</span>',
result = DOMfilterFilter(dom, 'number', 2).$$unwrapTrustedValue();
expect(result).toEqual(expected);
}));
it('should never lock up like in bug #688', inject(function($filter, DOMfilterFilter) {
it('should never lock up like in bug #688', angular.mock.inject(function($filter, DOMfilterFilter) {
var msg = '#crash http://google.com',
linked = $filter('conditionalLinkify')(msg),
irclinked = DOMfilterFilter(linked, 'irclinky');
@ -116,39 +116,39 @@ describe('Filters', function() {
});
describe('codify', function() {
it('should not mess up text', inject(function(codifyFilter) {
it('should not mess up text', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('foo')).toEqual('foo');
}));
it('should codify single snippets', inject(function(codifyFilter) {
it('should codify single snippets', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('z `foo` z')).toEqual('z <span class="hidden-bracket">`</span><code>foo</code><span class="hidden-bracket">`</span> z');
expect(codifyFilter('z `a` z')).toEqual('z <span class="hidden-bracket">`</span><code>a</code><span class="hidden-bracket">`</span> z');
expect(codifyFilter('z ```foo``` z')).toEqual('z <span class="hidden-bracket">```</span><code>foo</code><span class="hidden-bracket">```</span> z');
}));
it('should codify multiple snippets', inject(function(codifyFilter) {
it('should codify multiple snippets', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('z `foo` z `bar` `baz`')).toEqual('z <span class="hidden-bracket">`</span><code>foo</code><span class="hidden-bracket">`</span> z <span class="hidden-bracket">`</span><code>bar</code><span class="hidden-bracket">`</span> <span class="hidden-bracket">`</span><code>baz</code><span class="hidden-bracket">`</span>');
}));
it('should not codify empty snippets', inject(function(codifyFilter) {
it('should not codify empty snippets', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('``')).toEqual('``');
}));
it('should not codify single backticks', inject(function(codifyFilter) {
it('should not codify single backticks', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('foo`bar')).toEqual('foo`bar');
}));
it('should not codify double backticks', inject(function(codifyFilter) {
it('should not codify double backticks', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('some ``non-code``')).toEqual('some ``non-code``');
}));
it('should not codify pseudo-fancy quotes', inject(function(codifyFilter) {
it('should not codify pseudo-fancy quotes', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('some ``fancy qoutes\'\'')).toEqual('some ``fancy qoutes\'\'');
}));
it('should not codify stuff in the middle of a word or URL', inject(function(codifyFilter) {
it('should not codify stuff in the middle of a word or URL', angular.mock.inject(function(codifyFilter) {
expect(codifyFilter('https://foo.bar/`wat`')).toEqual('https://foo.bar/`wat`');
expect(codifyFilter('Weird`ness`')).toEqual('Weird`ness`');
}));

@ -35,7 +35,7 @@ describe('filter', function() {
$provide.value('version', 'TEST_VER');
}));
it('should recognize spotify links', inject(function(plugins) {
it('should recognize spotify links', angular.mock. angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'spotify:track:6JEK0CvvjDjjMUBFoXShNZ',
'spotify:user:lorenzhs:playlist:18aXdzQ4Ar1p019OSICtu4',
@ -49,7 +49,7 @@ describe('filter', function() {
}));
it('should recognize youtube videos', inject(function(plugins) {
it('should recognize youtube videos', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://www.youtube.com/watch?v=dQw4w9WgXcQ',
'http://www.youtube.com/watch?v=dQw4w9WgXcQ',
@ -62,7 +62,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize dailymotion videos', inject(function(plugins) {
it('should recognize dailymotion videos', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'dailymotion.com/video/test',
'dailymotion.com/video/#video=asdf',
@ -72,7 +72,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize allocine videos', inject(function(plugins) {
it('should recognize allocine videos', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'allocine.fr/videokast/video-12',
'allocine.fr/cmedia=234'
@ -81,7 +81,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize html5 videos', inject(function(plugins) {
it('should recognize html5 videos', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4',
'http://www.quirksmode.org/html5/videos/big_buck_bunny.webm',
@ -91,7 +91,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize images', inject(function(plugins) {
it('should recognize images', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'http://i.imgur.com/BTNIDBR.gif',
'https://i.imgur.com/1LmDmct.jpg',
@ -107,7 +107,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize cloud music', inject(function(plugins) {
it('should recognize cloud music', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'http://soundcloud.com/',
'https://sadf.mixcloud.com/',
@ -116,7 +116,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize google map', inject(function(plugins) {
it('should recognize google map', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://www.google.com/maps/@48.0034139,-74.9129088,6z',
],
@ -124,7 +124,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize google map', inject(function(plugins) {
it('should recognize google map', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://asciinema.org/a/10625',
],
@ -132,7 +132,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize meteograms', inject(function(plugins) {
it('should recognize meteograms', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'http://www.yr.no/sted/Canada/Quebec/Montreal/',
],
@ -140,7 +140,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize gists', inject(function(plugins) {
it('should recognize gists', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://gist.github.com/lorenzhs/e8c1a7d56fa170320eb8',
'https://gist.github.com/e8c1a7d56fa170320eb8',
@ -149,7 +149,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize pastebins', inject(function(plugins) {
it('should recognize pastebins', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'http://pastebin.com/Wn3TetSE',
'http://pastebin.com/raw/Wn3TetSE',
@ -158,7 +158,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize giphy gifs', inject(function(plugins) {
it('should recognize giphy gifs', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://giphy.com/gifs/eyes-shocked-bird-feqkVgjJpYtjy/',
'http://giphy.com/gifs/funny-cat-FiGiRei2ICzzG',
@ -167,7 +167,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize tweets', inject(function(plugins) {
it('should recognize tweets', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://twitter.com/DFB_Team_EN/statuses/488436782959448065',
],
@ -175,7 +175,7 @@ describe('filter', function() {
plugins);
}));
it('should recognize tiktoks', inject(function(plugins) {
it('should recognize tiktoks', angular.mock.inject(function(plugins) {
expectTheseMessagesToContain([
'https://www.tiktok.com/@scout2015/video/6718335390845095173',
'https://www.tiktok.com/@lewiscatpaldi/video/6800461190058298629',

Loading…
Cancel
Save