You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
@angular/core/testing has no exported member addProviders #2288
Versions. Please run ng --version. If there's nothing outputted, please run
in a Terminal: node --version and paste the result here:
angular-cli: 1.0.0-beta.15
node: 6.5.0
os: linux x64
Repro steps. Was this an app that wasn't created using the CLI? What change did you
do on your code? etc.
I created a new Class using the ng g class generator. In this case, it was a class called user, so I got a user.ts and user.spec.ts
The generated user.spec.ts had the following content:
/* tslint:disable:no-unused-variable */
import { addProviders, async, inject } from '@angular/core/testing';
import {User} from './user';
describe('User', () => {
it('should create an instance', () => {
expect(new User()).toBeTruthy();
});
});
The addProviders give an error because it doesn't exist in @angular/core/testing
The log given by the failure. Normally this include a stack trace and some
more information.
ERROR in [default] [...]/src/app/core/user/user.spec.ts:3:9
Module '"[...]/node_modules/@angular/core/testing/index"' has no exported member 'addProviders'.
@deebloo The thing is that the Angular CLI generates the test file with the AddProviders. I know they are deprecated, my issue was about stating the fact that Angular CLI shouldn't use AddProviders in the generated class.spec.ts
My version of CLI is angular-cli: 1.0.0-beta.15.
The CLI is using TestBed in most generators (component, service...etc) But not in the class generator. You can check it if you want.
@jeffarese nope you are totally correct. Looks like the class generator creates a bad test for class. (apologies I didn't see that you were generating class, thought it was service. Definitely a bug) Good catch
Activity
deebloo commentedon Sep 22, 2016
AddProviders was deprecated. Use Testbed instead. Also this is angular specific not cli specific
jeffarese commentedon Sep 22, 2016
@deebloo The thing is that the Angular CLI generates the test file with the AddProviders. I know they are deprecated, my issue was about stating the fact that Angular CLI shouldn't use AddProviders in the generated
class.spec.tsdeebloo commentedon Sep 22, 2016
The newest version of the cli uses Testbed
deebloo commentedon Sep 22, 2016
That code looks like it is from an old version of the cli
jeffarese commentedon Sep 22, 2016
My version of CLI is
angular-cli: 1.0.0-beta.15.The CLI is using TestBed in most generators (
component,service...etc) But not in theclassgenerator. You can check it if you want.deebloo commentedon Sep 22, 2016
@jeffarese nope you are totally correct. Looks like the class generator creates a bad test for class. (apologies I didn't see that you were generating class, thought it was service. Definitely a bug) Good catch
jeffarese commentedon Sep 22, 2016
Yeah, I'm afraid it's a bug :( no apologies needed!
deebloo commentedon Sep 22, 2016
I just submitted a PR that removes those imports
bugfix(generate): removes bad imports when generating a class
bugfix(generate): removes bad imports when generating a class
bugfix(generate): removes bad imports when generating a class
bugfix(generate): removes bad imports when generating a class
angular-automatic-lock-bot commentedon Sep 6, 2019
This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.
Read more about our automatic conversation locking policy.
This action has been performed automatically by a bot.
bugfix(generate): removes bad imports when generating a class