diff --git a/test/fixtures/vue2-common/invalid.vue b/test/fixtures/vue2-common/invalid.vue
index c86a980f..4e4a1e38 100644
--- a/test/fixtures/vue2-common/invalid.vue
+++ b/test/fixtures/vue2-common/invalid.vue
@@ -17,6 +17,20 @@
{{ baz }}
+
+
+
+
+
+
+
@@ -72,6 +86,11 @@ module.exports = {
// eslint-disable-next-line vue/no-reserved-component-names, vue/no-unused-components
button: {},
BlahComponent: {}
+ },
+ // eslint-disable-next-line vue/require-render-return
+ render: function () {
+ // eslint-disable-next-line vue/no-multiple-slot-args, no-unused-vars
+ var children = this.$scopedSlots.default( 'foo', 'bar' );
}
};
diff --git a/test/fixtures/vue2-common/valid.vue b/test/fixtures/vue2-common/valid.vue
index 8862be4e..ece66046 100644
--- a/test/fixtures/vue2-common/valid.vue
+++ b/test/fixtures/vue2-common/valid.vue
@@ -14,6 +14,15 @@
Click me
+
+
diff --git a/test/test.js b/test/test.js
index edfcc52b..3042eadf 100644
--- a/test/test.js
+++ b/test/test.js
@@ -21,19 +21,33 @@ function getPluginExtends( config ) {
const extendsList = Array.isArray( config.extends ) ?
config.extends :
[ config.extends ];
+
+ if ( config.overrides ) {
+ config.overrides.forEach( ( override ) => {
+ Object.assign( extendsList, override.extends );
+ } );
+ }
+
// Fetch every upstream config we use via 'extends'.
extendsList.forEach( ( extend ) => {
const parts = extend.match( /plugin:(.*)\/([^/]+)/ );
+ let childConfig;
if ( !parts ) {
- return;
- }
- let upstreamConfigs;
- if ( parts[ 1 ].includes( 'eslint-plugin-' ) ) {
- upstreamConfigs = require( parts[ 1 ] ).configs;
+ if ( fs.existsSync( extend ) ) {
+ childConfig = require( extend );
+ } else {
+ // Couldn't resolve extend path
+ return;
+ }
} else {
- upstreamConfigs = require( 'eslint-plugin-' + parts[ 1 ] ).configs;
+ let upstreamConfigs;
+ if ( parts[ 1 ].includes( 'eslint-plugin-' ) ) {
+ upstreamConfigs = require( parts[ 1 ] ).configs;
+ } else {
+ upstreamConfigs = require( 'eslint-plugin-' + parts[ 1 ] ).configs;
+ }
+ childConfig = upstreamConfigs[ parts[ 2 ] ];
}
- const childConfig = upstreamConfigs[ parts[ 2 ] ];
Object.assign(
rules,
getRules( childConfig )
@@ -57,7 +71,9 @@ configs.forEach( ( configPath ) => {
'json',
'mocha',
'qunit',
- 'selenium'
+ 'selenium',
+ 'vue2-common',
+ 'vue3-common'
];
QUnit.module( `"${configName}" config`, () => {