Skip to content

Commit

Permalink
refactor(ToastController): Deprecate static instance method
Browse files Browse the repository at this point in the history
  • Loading branch information
stonelasley committed Jul 5, 2018
1 parent b35bc05 commit cb1b348
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 6 deletions.
36 changes: 36 additions & 0 deletions src/angular/toast-controller.spec.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import { ToastControllerMock } from './toast-controller';
import { ToastMock } from './toast';

describe('ToastController', () => {
let classUnderTest: any;

beforeEach(() => {
classUnderTest = new ToastControllerMock();
});

it('should be defined', () => {
expect(classUnderTest).toBeDefined();
});

describe('create', () => {
it('should exist', () => {
expect(classUnderTest.create).toBeDefined();
});

it('should return a Toast', () => {
let result = classUnderTest.create();

expect(result).toBeDefined();
expect(result.present).toBeDefined();
});

it('should return provided Toast', () => {
let toast = new ToastMock();
classUnderTest = new ToastControllerMock(toast);

let result = classUnderTest.create();

expect(result).toBe(toast);
});
});
});
18 changes: 12 additions & 6 deletions src/angular/toast-controller.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,17 @@
import {ToastMock} from './toast';
import deprecated from 'deprecated-decorator';
import { BaseMock } from '../base.mock';
import { ToastMock } from './toast';

export class ToastControllerMock {
public static instance(toast?: ToastMock): any {
const METHODS = ['create'];

let instance = jasmine.createSpyObj('ToastController', ['create']);
instance.create.and.returnValue(toast || ToastMock.instance());
export class ToastControllerMock extends BaseMock {
constructor(toast?: ToastMock) {
super('ToastController', METHODS);
this.spyObj.create.and.returnValue(toast || new ToastMock());
}

return instance;
@deprecated('new ToastControllerMock()')
public static instance(toast?: ToastMock): any {
return new ToastControllerMock(toast);
}
}

0 comments on commit cb1b348

Please sign in to comment.