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
fix(@angular-devkit/build-angular): add a base href to karma debug context #19119
fix(@angular-devkit/build-angular): add a base href to karma debug context #19119
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, for this @IxquitilisSaid, LGTM.
One small NIT, can you please add the PR description as part of the commit message body and add Closes #19116
as the commit message footer.
See: https://github.com/angular/angular-cli/blob/master/CONTRIBUTING.md#commit for more info.
…ntext This commits adds a base href value in the karma context iframe used to run unit tests where a unit test throws: No base href set. Please provide a value for the APP_BASE_HREF token or add a base element to the document. Even if the application is fine. This is because the index.html from Angular CLI contains a base href value, but not the Karma context iframe. So when adding a unit test with a testing module that imports a NgModule, for example AppModule, which itself imports RouterModule, the unit test used to throw an error (regression appeared in router 3.1). That could be solved by either adding `RouterTestingModule` to the testing module, or by adding a provider `{ provide: APP_BASE_HREF, useValue: '/' }`, but required to understand the issue. This solves the issue in a transparent way: developers won't even encounter the problem anymore. Closes angular#19116
cc8fa9f
to
24854df
Compare
@alan-agius4 I've updated the commit message, hopefully didn't mess it up. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The commit message, looks good.
Thanks
@googlebot ping! |
This issue has been automatically locked due to inactivity. Read more about our automatic conversation locking policy. This action has been performed automatically by a bot. |
This commits adds a base href value in the karma context iframe used to run unit tests.
It solves #19116 where a unit test throws:
Even if the application is fine. This is because the index.html from Angular CLI contains a base href value, but not the Karma context iframe. So when adding a unit test with a testing module that imports a NgModule, for example AppModule, which itself imports RouterModule, the unit test used to throw an error (regression appeared in router 3.1).
That could be solved by either adding
RouterTestingModule
to the testing module, or by adding a provider{ provide: APP_BASE_HREF, useValue: '/' }
, but required to understand the issue.This solves the issue in a transparent way: developers won't even encounter the problem anymore.