Skip to content

@angular/core/testing has no exported member addProviders #2288

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

Closed
jeffarese opened this issue Sep 22, 2016 · 9 comments
Closed

@angular/core/testing has no exported member addProviders #2288

jeffarese opened this issue Sep 22, 2016 · 9 comments

Comments

@jeffarese
Copy link

jeffarese commented Sep 22, 2016

Please provide us with the following information:

  1. OS? Ubuntu 16.04 LTS
  2. 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
  1. 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

  1. 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'.
  1. Mention any other details that might be useful.

Thanks! We'll be in touch soon.

@deebloo
Copy link
Contributor

deebloo commented Sep 22, 2016

AddProviders was deprecated. Use Testbed instead. Also this is angular specific not cli specific

@jeffarese
Copy link
Author

@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

@deebloo
Copy link
Contributor

deebloo commented Sep 22, 2016

The newest version of the cli uses Testbed

@deebloo
Copy link
Contributor

deebloo commented Sep 22, 2016

That code looks like it is from an old version of the cli

@jeffarese
Copy link
Author

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.

@deebloo
Copy link
Contributor

deebloo commented 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
Copy link
Author

Yeah, I'm afraid it's a bug :( no apologies needed!

@deebloo
Copy link
Contributor

deebloo commented Sep 22, 2016

I just submitted a PR that removes those imports

@angular-automatic-lock-bot
Copy link

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.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Sep 6, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
2 participants