1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- 'use strict'
- const fs = require('fs-extra')
- const colors = require('colors')
- expect.extend({
- /**
- * Expect ESLint results to have no errors
- * @param {*} received ESLint results
- * @param {*} argument Arguments
- * @returns {object} Matcher result
- */
- toESLint (received, argument) {
- if (received && received.errorCount > 0) {
- let errorMsgBuf = []
- for (let i = 0; i < received.results.length; i++) {
- const result = received.results[i]
- if (result.errorCount <= 0) {
- continue
- }
- for (let x = 0; x < result.messages.length; x++) {
- const m = result.messages[x]
- errorMsgBuf.push(colors.grey(`└── ${result.filePath}\t${m.line}:${m.column}\t${m.message}`))
- }
- }
- if (errorMsgBuf.length > 0) {
- return {
- message: () => (errorMsgBuf.join(`\n`)),
- pass: false
- }
- }
- }
- return {
- pass: true
- }
- },
- /**
- * Expect PugLint results to have no errors
- * @param {*} received PugLint results
- * @param {*} argument Arguments
- * @returns {object} Matcher result
- */
- toPugLint (received, argument) {
- if (received && received.length > 0) {
- let errorMsgBuf = []
- for (let i = 0; i < received.length; i++) {
- errorMsgBuf.push(colors.grey(`└── ${received[i].message}`))
- }
- return {
- message: () => (errorMsgBuf.join(`\n`)),
- pass: false
- }
- }
- return {
- pass: true
- }
- }
- })
- describe('Code Linting', () => {
- // it('should pass ESLint validation', () => {
- // const CLIEngine = require('eslint').CLIEngine
- // const cli = new CLIEngine()
- // let report = cli.executeOnFiles(['**/*.js', '**/*.vue'])
- // expect(report).toESLint()
- // })
- it('should pass PugLint validation', () => {
- const PugLint = require('pug-lint')
- const lint = new PugLint()
- const pugConfig = fs.readJsonSync('tools/pug-lintrc.json')
- lint.configure(pugConfig)
- let report = lint.checkPath('./server/views')
- expect(report).toPugLint()
- })
- })
|