webdriverio/wdio-jasmine-framework

View on GitHub

Showing 146 of 146 total issues

Similar blocks of code found in 2 locations. Consider refactoring.
Open

    describe('hook exceptions', () => {
        it('should fail test', async () => {
            global.browser = new WebdriverIO()
            global.browser.options = { sync: false }
            const adapter = new JasmineAdapter(0, {}, failureSpec, {})
Severity: Major
Found in test/hooks.spec.js and 1 other location - About 5 hrs to fix
test/tests.spec.js on lines 116..125

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 144.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

        describe('beforeHook', () => {
            let beforeHookHook

            before(() => {
                beforeHookHook = global._wdio.beforeHook
Severity: Major
Found in test/hooks.spec.js and 1 other location - About 4 hrs to fix
test/hooks.spec.js on lines 117..132

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 131.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

        describe('afterHook', () => {
            let afterHookHook

            before(() => {
                afterHookHook = global._wdio.afterHook
Severity: Major
Found in test/hooks.spec.js and 1 other location - About 4 hrs to fix
test/hooks.spec.js on lines 100..115

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 131.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    describe('run flaky (error thrown) beforeEach hooks', () => {
        let retryCnt
        beforeAll(() => {
            retryCnt = 2
        })
Severity: Major
Found in test/fixtures/tests.retry.async.spec.js and 3 other locations - About 4 hrs to fix
test/fixtures/tests.retry.async.spec.js on lines 24..42
test/fixtures/tests.retry.async.spec.js on lines 171..189
test/fixtures/tests.retry.async.spec.js on lines 213..231

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 129.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    describe('run flaky (error thrown) afterAll hooks', () => {
        let retryCnt
        beforeAll(() => {
            retryCnt = 2
        })
Severity: Major
Found in test/fixtures/tests.retry.async.spec.js and 3 other locations - About 4 hrs to fix
test/fixtures/tests.retry.async.spec.js on lines 24..42
test/fixtures/tests.retry.async.spec.js on lines 65..83
test/fixtures/tests.retry.async.spec.js on lines 213..231

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 129.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    describe('run flaky (error thrown) afterEach hooks', () => {
        let retryCnt
        beforeAll(() => {
            retryCnt = 2
        })
Severity: Major
Found in test/fixtures/tests.retry.async.spec.js and 3 other locations - About 4 hrs to fix
test/fixtures/tests.retry.async.spec.js on lines 24..42
test/fixtures/tests.retry.async.spec.js on lines 65..83
test/fixtures/tests.retry.async.spec.js on lines 171..189

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 129.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 4 locations. Consider refactoring.
Open

    describe('run flaky (error thrown) beforeAll hooks', () => {
        let retryCnt
        beforeAll(() => {
            retryCnt = 2
        })
Severity: Major
Found in test/fixtures/tests.retry.async.spec.js and 3 other locations - About 4 hrs to fix
test/fixtures/tests.retry.async.spec.js on lines 65..83
test/fixtures/tests.retry.async.spec.js on lines 171..189
test/fixtures/tests.retry.async.spec.js on lines 213..231

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 129.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    beforeTest: (...args) => {
        global.___wdio.beforeTest.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.beforeTest.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 45..53
test/fixtures/hooks.using.q.promises.js on lines 54..62
test/fixtures/hooks.using.q.promises.js on lines 63..71
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 99..107
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 117..125
test/fixtures/hooks.using.q.promises.js on lines 126..134

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    afterHook: (...args) => {
        global.___wdio.afterHook.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.afterHook.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 45..53
test/fixtures/hooks.using.q.promises.js on lines 54..62
test/fixtures/hooks.using.q.promises.js on lines 72..80
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 99..107
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 117..125
test/fixtures/hooks.using.q.promises.js on lines 126..134

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    beforeSuite: (...args) => {
        global.___wdio.beforeSuite.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.beforeSuite.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 54..62
test/fixtures/hooks.using.q.promises.js on lines 63..71
test/fixtures/hooks.using.q.promises.js on lines 72..80
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 99..107
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 117..125
test/fixtures/hooks.using.q.promises.js on lines 126..134

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    beforeHook: (...args) => {
        global.___wdio.beforeHook.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.beforeHook.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 45..53
test/fixtures/hooks.using.q.promises.js on lines 63..71
test/fixtures/hooks.using.q.promises.js on lines 72..80
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 99..107
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 117..125
test/fixtures/hooks.using.q.promises.js on lines 126..134

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    afterTest: (...args) => {
        global.___wdio.afterTest.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.afterTest.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 45..53
test/fixtures/hooks.using.q.promises.js on lines 54..62
test/fixtures/hooks.using.q.promises.js on lines 63..71
test/fixtures/hooks.using.q.promises.js on lines 72..80
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 117..125
test/fixtures/hooks.using.q.promises.js on lines 126..134

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    after: (...args) => {
        global.___wdio.after.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.after.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 45..53
test/fixtures/hooks.using.q.promises.js on lines 54..62
test/fixtures/hooks.using.q.promises.js on lines 63..71
test/fixtures/hooks.using.q.promises.js on lines 72..80
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 99..107
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 126..134

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

    before: (...args) => {
        global._wdio.before = {
            wasExecuted: true,
            start: new Date().getTime(),
            args
Severity: Major
Found in test/fixtures/hooks.using.native.promises.js and 9 other locations - About 4 hrs to fix
test/fixtures/hooks.using.native.promises.js on lines 22..35
test/fixtures/hooks.using.native.promises.js on lines 36..49
test/fixtures/hooks.using.native.promises.js on lines 50..63
test/fixtures/hooks.using.native.promises.js on lines 64..77
test/fixtures/hooks.using.native.promises.js on lines 78..91
test/fixtures/hooks.using.native.promises.js on lines 92..105
test/fixtures/hooks.using.native.promises.js on lines 106..119
test/fixtures/hooks.using.native.promises.js on lines 120..133
test/fixtures/hooks.using.native.promises.js on lines 134..147

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

    beforeTest: (...args) => {
        global._wdio.beforeTest = {
            wasExecuted: true,
            start: new Date().getTime(),
            args
Severity: Major
Found in test/fixtures/hooks.using.native.promises.js and 9 other locations - About 4 hrs to fix
test/fixtures/hooks.using.native.promises.js on lines 8..21
test/fixtures/hooks.using.native.promises.js on lines 22..35
test/fixtures/hooks.using.native.promises.js on lines 36..49
test/fixtures/hooks.using.native.promises.js on lines 50..63
test/fixtures/hooks.using.native.promises.js on lines 78..91
test/fixtures/hooks.using.native.promises.js on lines 92..105
test/fixtures/hooks.using.native.promises.js on lines 106..119
test/fixtures/hooks.using.native.promises.js on lines 120..133
test/fixtures/hooks.using.native.promises.js on lines 134..147

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

    beforeHook: (...args) => {
        global._wdio.beforeHook = {
            wasExecuted: true,
            start: new Date().getTime(),
            args
Severity: Major
Found in test/fixtures/hooks.using.native.promises.js and 9 other locations - About 4 hrs to fix
test/fixtures/hooks.using.native.promises.js on lines 8..21
test/fixtures/hooks.using.native.promises.js on lines 22..35
test/fixtures/hooks.using.native.promises.js on lines 50..63
test/fixtures/hooks.using.native.promises.js on lines 64..77
test/fixtures/hooks.using.native.promises.js on lines 78..91
test/fixtures/hooks.using.native.promises.js on lines 92..105
test/fixtures/hooks.using.native.promises.js on lines 106..119
test/fixtures/hooks.using.native.promises.js on lines 120..133
test/fixtures/hooks.using.native.promises.js on lines 134..147

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

    afterTest: (...args) => {
        global._wdio.afterTest = {
            wasExecuted: true,
            start: new Date().getTime(),
            args
Severity: Major
Found in test/fixtures/hooks.using.native.promises.js and 9 other locations - About 4 hrs to fix
test/fixtures/hooks.using.native.promises.js on lines 8..21
test/fixtures/hooks.using.native.promises.js on lines 22..35
test/fixtures/hooks.using.native.promises.js on lines 36..49
test/fixtures/hooks.using.native.promises.js on lines 50..63
test/fixtures/hooks.using.native.promises.js on lines 64..77
test/fixtures/hooks.using.native.promises.js on lines 78..91
test/fixtures/hooks.using.native.promises.js on lines 92..105
test/fixtures/hooks.using.native.promises.js on lines 120..133
test/fixtures/hooks.using.native.promises.js on lines 134..147

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

    after: (...args) => {
        global._wdio.after = {
            wasExecuted: true,
            start: new Date().getTime(),
            args
Severity: Major
Found in test/fixtures/hooks.using.native.promises.js and 9 other locations - About 4 hrs to fix
test/fixtures/hooks.using.native.promises.js on lines 8..21
test/fixtures/hooks.using.native.promises.js on lines 22..35
test/fixtures/hooks.using.native.promises.js on lines 36..49
test/fixtures/hooks.using.native.promises.js on lines 50..63
test/fixtures/hooks.using.native.promises.js on lines 64..77
test/fixtures/hooks.using.native.promises.js on lines 78..91
test/fixtures/hooks.using.native.promises.js on lines 92..105
test/fixtures/hooks.using.native.promises.js on lines 106..119
test/fixtures/hooks.using.native.promises.js on lines 120..133

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 12 locations. Consider refactoring.
Open

    onComplete: (...args) => {
        global.___wdio.onComplete.start = new Date().getTime()
        const defer = q.defer()
        setTimeout(() => {
            global.___wdio.onComplete.end = new Date().getTime()
Severity: Major
Found in test/fixtures/hooks.using.q.promises.js and 11 other locations - About 4 hrs to fix
test/fixtures/hooks.using.q.promises.js on lines 27..35
test/fixtures/hooks.using.q.promises.js on lines 36..44
test/fixtures/hooks.using.q.promises.js on lines 45..53
test/fixtures/hooks.using.q.promises.js on lines 54..62
test/fixtures/hooks.using.q.promises.js on lines 63..71
test/fixtures/hooks.using.q.promises.js on lines 72..80
test/fixtures/hooks.using.q.promises.js on lines 81..89
test/fixtures/hooks.using.q.promises.js on lines 90..98
test/fixtures/hooks.using.q.promises.js on lines 99..107
test/fixtures/hooks.using.q.promises.js on lines 108..116
test/fixtures/hooks.using.q.promises.js on lines 117..125

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

    beforeSuite: (...args) => {
        global._wdio.beforeSuite = {
            wasExecuted: true,
            start: new Date().getTime(),
            args
Severity: Major
Found in test/fixtures/hooks.using.native.promises.js and 9 other locations - About 4 hrs to fix
test/fixtures/hooks.using.native.promises.js on lines 8..21
test/fixtures/hooks.using.native.promises.js on lines 36..49
test/fixtures/hooks.using.native.promises.js on lines 50..63
test/fixtures/hooks.using.native.promises.js on lines 64..77
test/fixtures/hooks.using.native.promises.js on lines 78..91
test/fixtures/hooks.using.native.promises.js on lines 92..105
test/fixtures/hooks.using.native.promises.js on lines 106..119
test/fixtures/hooks.using.native.promises.js on lines 120..133
test/fixtures/hooks.using.native.promises.js on lines 134..147

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 115.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Severity
Category
Status
Source
Language