Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
2084c71d
Commit
2084c71d
authored
Aug 01, 2018
by
Lukas Eipert
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
make `karma -f` work again
parent
dbd5ba09
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
15 deletions
+18
-15
config/karma.config.js
config/karma.config.js
+18
-15
No files found.
config/karma.config.js
View file @
2084c71d
...
...
@@ -6,6 +6,7 @@ const argumentsParser = require('commander');
const
webpackConfig
=
require
(
'
./webpack.config.js
'
);
const
ROOT_PATH
=
path
.
resolve
(
__dirname
,
'
..
'
);
const
SPECS_PATH
=
/^
(?:\.[\\\/])?(
ee
[\\\/])?
spec
[\\\/]
javascripts
[\\\/]
/
;
function
fatalError
(
message
)
{
console
.
error
(
chalk
.
red
(
`\nError:
${
message
}
\n`
));
...
...
@@ -34,9 +35,19 @@ const specFilters = argumentsParser
)
.
parse
(
process
.
argv
).
filterSpec
;
if
(
specFilters
.
length
)
{
const
specsPath
=
/^
(?:\.[\\\/])?
spec
[\\\/]
javascripts
[\\\/]
/
;
const
createContext
=
(
specFiles
,
regex
,
suffix
)
=>
{
const
newContext
=
specFiles
.
reduce
((
context
,
file
)
=>
{
const
relativePath
=
file
.
replace
(
SPECS_PATH
,
''
);
context
[
file
]
=
`./
${
relativePath
}
`
;
return
context
;
},
{});
webpackConfig
.
plugins
.
push
(
new
webpack
.
ContextReplacementPlugin
(
regex
,
path
.
join
(
ROOT_PATH
,
suffix
),
newContext
)
);
};
if
(
specFilters
.
length
)
{
// resolve filters
let
filteredSpecFiles
=
specFilters
.
map
(
filter
=>
glob
...
...
@@ -57,23 +68,15 @@ if (specFilters.length) {
fatalError
(
'
Your filter did not match any test files.
'
);
}
if
(
!
filteredSpecFiles
.
every
(
file
=>
specsPath
.
test
(
file
)))
{
if
(
!
filteredSpecFiles
.
every
(
file
=>
SPECS_PATH
.
test
(
file
)))
{
fatalError
(
'
Test files must be located within /spec/javascripts.
'
);
}
const
newContext
=
filteredSpecFiles
.
reduce
((
context
,
file
)
=>
{
const
relativePath
=
file
.
replace
(
specsPath
,
''
);
context
[
file
]
=
`./
${
relativePath
}
`
;
return
context
;
},
{});
const
CE_FILES
=
filteredSpecFiles
.
filter
(
file
=>
!
file
.
startsWith
(
'
ee
'
));
createContext
(
CE_FILES
,
/
[^
e
]{2}[\\\/]
spec
[\\\/]
javascripts$/
,
'
spec/javascripts
'
);
webpackConfig
.
plugins
.
push
(
new
webpack
.
ContextReplacementPlugin
(
/spec
[\\\/]
javascripts$/
,
path
.
join
(
ROOT_PATH
,
'
spec/javascripts
'
),
newContext
)
);
const
EE_FILES
=
filteredSpecFiles
.
filter
(
file
=>
file
.
startsWith
(
'
ee
'
));
createContext
(
EE_FILES
,
/ee
[\\\/]
spec
[\\\/]
javascripts$/
,
'
ee/spec/javascripts
'
);
}
// Karma configuration
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment