-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Aggregated Log Output #39
Comments
You are setting the option incorrectly. It should be a function or regex. Try this aggregatedReporterTest: /coverage|brief|istanbul|junit/i |
That doesn't work either. I get this error:
|
Any other suggestions on how to resolve? |
Hi Joel, |
We had similar issues using istanbul reporter. I got it working by adjusting lib/reporter.js:
would be nice if anybody could explain me the reason for the if-condition. |
I ended up adding this getters to the AggegatedBrowserLastResult. No need to comment out the if below. I wonder how best to proceed with the changes.
@jo-soft How did you override the lib inside of your project ? |
@MikeDabrowski basically creating a local fork and adjusting it (after testing it by adjusting local node_modules). but it look like you figured out something |
I just copied relevant files and imported them locally. Which forced me to pull lodash into my code base. I tried substituting it with ramda (which we use and prefer) at first but there is quite a lot mutation inside and I was not able to replace all of it.
I wonder if any other way is possible ?
|
it's easy to avoid lodash:
|
in some places, yes. get total() {
return R.sum(Object.values(this._realLastResults).map(R.prop('total')));
}
get failed() {
return R.sum(Object.values(this._realLastResults).map(R.prop('failed')));
}
get success() {
return R.sum(Object.values(this._realLastResults).map(R.prop('success')));
}
get skipped() {
return R.sum(Object.values(this._realLastResults).map(R.prop('skipped')));
}
get netTime() {
return R.apply(
Math.max,
Object.values(this._realLastResults).map(R.prop('netTime')),
);
} But there is this piece for example: const callThrough = _.rest((fnName, args) => {
reporters.forEach(({name, reporter}) => {
if (_.isFunction(reporter[fnName])) {
log.debug(`relaying ${fnName}() on reporter:${name}`);
reporter[fnName].apply(reporter, args);
}
});
}); I am sure it is possible to use ramda / native-js for this but I just did not want to invest more time in it. Lodash's functions that are still used: |
I'm submitting a ...
What is the current behavior?
When using the brief reporter, none of the output is aggregated. It showed the output for 1 of the 6 exectuters, not all
I tried the option:
aggregatedReporterTest: [(reporter)=>regex=/coverage|brief|istanbul|junit/i]
And other permutations of the reporter name
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem
What is the expected behavior?
All output should be aggregated, so that I can see the end result for ALL instances
Please tell us about your environment:
version:
"karma-parallel": "^0.3.1",
"karma-brief-reporter": "0.0.7",
Browser: [ Chrome XX ]
Language: [TypeScript X.X | ES6/7 ]
Node v10.15.3
NPM v6.4.1
Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)
Karma Config I was using
The text was updated successfully, but these errors were encountered: