From 6de3e5742688e0a2656f2485b8c693245fc9cb00 Mon Sep 17 00:00:00 2001 From: Mikhail Losev Date: Fri, 8 Jul 2016 10:55:35 +0300 Subject: [PATCH] Force line endings (#664) * force line endings * Normalize all the line endings * add eslint rule --- .eslintrc | 185 +-- .gitattributes | 8 + .../fixtures/sandbox/node/attributes-test.js | 1154 ++++++++--------- .../fixtures/sandbox/node/window-test.js | 260 ++-- test/client/fixtures/sandbox/storages-test.js | 836 ++++++------ test/playground/upload-storage/.gitkeep | 2 +- 6 files changed, 1227 insertions(+), 1218 deletions(-) create mode 100644 .gitattributes diff --git a/.eslintrc b/.eslintrc index 5ab0d2ff6..38bb92ed0 100644 --- a/.eslintrc +++ b/.eslintrc @@ -1,92 +1,93 @@ -{ - "parser": "babel-eslint", - "extends": "eslint:recommended", - "rules": { - "no-alert": 2, - "no-array-constructor": 2, - "no-caller": 2, - "no-catch-shadow": 2, - "no-eval": 2, - "no-extend-native": 2, - "no-extra-bind": 2, - "no-implied-eval": 2, - "no-iterator": 2, - "no-label-var": 2, - "no-labels": 2, - "no-lone-blocks": 2, - "no-loop-func": 2, - "no-multi-str": 2, - "no-native-reassign": 2, - "no-new": 2, - "no-new-func": 2, - "no-new-object": 2, - "no-new-wrappers": 2, - "no-octal-escape": 2, - "no-process-exit": 2, - "no-proto": 2, - "no-return-assign": 2, - "no-script-url": 2, - "no-sequences": 2, - "no-shadow": 2, - "no-shadow-restricted-names": 2, - "no-spaced-func": 2, - "no-trailing-spaces": 2, - "no-undef-init": 2, - "no-unused-expressions": 2, - "no-with": 2, - "camelcase": 2, - "comma-spacing": 2, - "consistent-return": 2, - "eqeqeq": 2, - "semi": 2, - "semi-spacing": [2, {"before": false, "after": true}], - "space-infix-ops": 2, - "space-unary-ops": [2, { "words": true, "nonwords": false }], - "yoda": [2, "never"], - "brace-style": [2, "stroustrup", { "allowSingleLine": false }], - "eol-last": 2, - "indent": [2, 4, {"SwitchCase": 1}], - "key-spacing": [2, { "align": "value" }], - "max-nested-callbacks": [2, 3], - "new-parens": 2, - "newline-after-var": [2, "always"], - "no-lonely-if": 2, - "no-multiple-empty-lines": [2, { "max": 2 }], - "no-nested-ternary": 2, - "no-underscore-dangle": 0, - "no-unneeded-ternary": 2, - "object-curly-spacing": [2, "always"], - "operator-assignment": [2, "always"], - "quotes": [2, "single", "avoid-escape"], - "keyword-spacing": 2, - "space-before-blocks": [2, "always"], - "prefer-const": 2, - "no-path-concat": 2, - "no-undefined": 2, - "strict": 0, - "curly": [2, "multi-or-nest"], - "dot-notation": 0, - "no-else-return": 2, - "one-var": [2, "never"], - "no-multi-spaces": [2, { - "exceptions": { - "VariableDeclarator": true, - "AssignmentExpression": true - } - }], - "radix": 2, - "no-extra-parens": 2, - "new-cap": [2, { "capIsNew": false }], - "space-before-function-paren": [2, "always"], - "no-use-before-define" : [2, "nofunc"], - "handle-callback-err": 0, - "import/export": 2 - }, - "env": { - "node": true, - "es6": true - }, - "plugins": [ - "import" - ] -} +{ + "parser": "babel-eslint", + "extends": "eslint:recommended", + "rules": { + "no-alert": 2, + "no-array-constructor": 2, + "no-caller": 2, + "no-catch-shadow": 2, + "no-eval": 2, + "no-extend-native": 2, + "no-extra-bind": 2, + "no-implied-eval": 2, + "no-iterator": 2, + "no-label-var": 2, + "no-labels": 2, + "no-lone-blocks": 2, + "no-loop-func": 2, + "no-multi-str": 2, + "no-native-reassign": 2, + "no-new": 2, + "no-new-func": 2, + "no-new-object": 2, + "no-new-wrappers": 2, + "no-octal-escape": 2, + "no-process-exit": 2, + "no-proto": 2, + "no-return-assign": 2, + "no-script-url": 2, + "no-sequences": 2, + "no-shadow": 2, + "no-shadow-restricted-names": 2, + "no-spaced-func": 2, + "no-trailing-spaces": 2, + "no-undef-init": 2, + "no-unused-expressions": 2, + "no-with": 2, + "camelcase": 2, + "comma-spacing": 2, + "consistent-return": 2, + "eqeqeq": 2, + "semi": 2, + "semi-spacing": [2, {"before": false, "after": true}], + "space-infix-ops": 2, + "space-unary-ops": [2, { "words": true, "nonwords": false }], + "yoda": [2, "never"], + "brace-style": [2, "stroustrup", { "allowSingleLine": false }], + "eol-last": 2, + "indent": [2, 4, {"SwitchCase": 1}], + "key-spacing": [2, { "align": "value" }], + "max-nested-callbacks": [2, 3], + "new-parens": 2, + "newline-after-var": [2, "always"], + "no-lonely-if": 2, + "no-multiple-empty-lines": [2, { "max": 2 }], + "no-nested-ternary": 2, + "no-underscore-dangle": 0, + "no-unneeded-ternary": 2, + "object-curly-spacing": [2, "always"], + "operator-assignment": [2, "always"], + "quotes": [2, "single", "avoid-escape"], + "keyword-spacing": 2, + "space-before-blocks": [2, "always"], + "prefer-const": 2, + "no-path-concat": 2, + "no-undefined": 2, + "strict": 0, + "curly": [2, "multi-or-nest"], + "dot-notation": 0, + "no-else-return": 2, + "one-var": [2, "never"], + "no-multi-spaces": [2, { + "exceptions": { + "VariableDeclarator": true, + "AssignmentExpression": true + } + }], + "radix": 2, + "no-extra-parens": 2, + "new-cap": [2, { "capIsNew": false }], + "space-before-function-paren": [2, "always"], + "no-use-before-define" : [2, "nofunc"], + "handle-callback-err": 0, + "linebreak-style": [2, "unix"], + "import/export": 2 + }, + "env": { + "node": true, + "es6": true + }, + "plugins": [ + "import" + ] +} diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 000000000..ec5f4d2a2 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,8 @@ +* text=auto +*.js text eol=lf +*.css text eol=lf +*.html text eol=lf +*.md text eol=lf + +*.png binary +*.ico binary diff --git a/test/client/fixtures/sandbox/node/attributes-test.js b/test/client/fixtures/sandbox/node/attributes-test.js index ea65451ae..4a088ca85 100644 --- a/test/client/fixtures/sandbox/node/attributes-test.js +++ b/test/client/fixtures/sandbox/node/attributes-test.js @@ -1,577 +1,577 @@ -var INTERNAL_PROPS = hammerhead.get('../processing/dom/internal-properties'); -var domProcessor = hammerhead.get('./dom-processor'); -var htmlUtils = hammerhead.get('./utils/html'); -var settings = hammerhead.get('./settings'); -var urlUtils = hammerhead.get('./utils/url'); -var destLocation = hammerhead.get('./utils/destination-location'); -var featureDetection = hammerhead.get('./utils/feature-detection'); - -var nativeMethods = hammerhead.nativeMethods; -var browserUtils = hammerhead.utils.browser; -var iframeSandbox = hammerhead.sandbox.iframe; -var unloadSandbox = hammerhead.sandbox.event.unload; - -QUnit.testStart(function () { - // NOTE: The 'window.open' method used in QUnit. - window.open = nativeMethods.windowOpen; - window.setTimeout = nativeMethods.setTimeout; - iframeSandbox.on(iframeSandbox.RUN_TASK_SCRIPT, initIframeTestHandler); - iframeSandbox.off(iframeSandbox.RUN_TASK_SCRIPT, iframeSandbox.iframeReadyToInitHandler); -}); - -QUnit.testDone(function () { - iframeSandbox.off(iframeSandbox.RUN_TASK_SCRIPT, initIframeTestHandler); -}); - -test('url', function () { - var testUrlAttr = function (tagName, attr) { - var el = nativeMethods.createElement.call(document, tagName); - var storedAttr = domProcessor.getStoredAttrName(attr); - var namespace = 'http://www.w3.org/1999/xhtml'; - - var getAttr = function () { - return nativeMethods.getAttribute.call(el, attr); - }; - - var getWrapAttr = function () { - return nativeMethods.getAttribute.call(el, storedAttr); - }; - - processDomMeth(el); - - el.setAttribute(attr, ''); - - var emptyAttrValue = el[attr]; - var dest = 'http://dest.com/'; - var resourceType = null; - - if (tagName === 'script') - resourceType = 's'; - else if (tagName === 'form') - resourceType = 'f'; - - var proxy = urlUtils.getProxyUrl(dest, null, null, null, resourceType); - - setProperty(el, attr, dest); - strictEqual(el[attr], proxy); - strictEqual(getProperty(el, attr), dest); - strictEqual(getAttr(), proxy); - strictEqual(getWrapAttr(), dest); - - var newUrl = '/image'; - var proxyNewUrl = urlUtils.getProxyUrl('/image', null, null, null, resourceType); - - el.setAttribute(attr, newUrl); - strictEqual(el[attr], proxyNewUrl); - strictEqual(getProperty(el, attr), urlUtils.parseProxyUrl(proxyNewUrl).destUrl); - strictEqual(getAttr(), proxyNewUrl); - strictEqual(getWrapAttr(), newUrl); - - setProperty(el, attr, ''); - strictEqual(getWrapAttr(), ''); - strictEqual(getAttr(), ''); - strictEqual(el[attr], emptyAttrValue); - strictEqual(getProperty(el, attr), destLocation.get()); - - el.removeAttribute(attr); - strictEqual(getWrapAttr(), null); - strictEqual(getAttr(), null); - - if (attr === 'action' && featureDetection.emptyActionAttrFallbacksToTheLocation) - strictEqual(getProperty(el, attr), destLocation.get()); - else - strictEqual(getProperty(el, attr), ''); - - el.setAttributeNS(namespace, attr, dest); - strictEqual(nativeMethods.getAttributeNS.call(el, namespace, attr), proxy); - strictEqual(nativeMethods.getAttributeNS.call(el, namespace, storedAttr), dest); - }; - - var testData = [ - { tagName: 'a', attr: 'href' }, - { tagName: 'script', attr: 'src' }, - { tagName: 'link', attr: 'href' }, - { tagName: 'form', attr: 'action' }, - { tagName: 'embed', attr: 'src' }, - { tagName: 'object', attr: 'data' } - ]; - - for (var i = 0; i < testData.length; i++) - testUrlAttr(testData[i].tagName, testData[i].attr); -}); - -test('script src', function () { - var storedSessionId = settings.get().sessionId; - - settings.get().sessionId = 'sessionId'; - - var script = document.createElement('script'); - - processDomMeth(script); - - document[INTERNAL_PROPS.documentCharset] = 'utf-8'; - - script.setAttribute('src', 'http://google.com'); - - strictEqual(urlUtils.parseProxyUrl(script.src).resourceType, 's'); - strictEqual(urlUtils.parseProxyUrl(script.src).charset, 'utf-8'); - - document[INTERNAL_PROPS.documentCharset] = null; - - settings.get().sessionId = storedSessionId; -}); - -asyncTest('iframe with "javascript: ..." src', function () { - var iframe = document.createElement('iframe'); - var src = 'javascript:"