import BluebirdPromise = require("bluebird"); import { IClient, GroupsAndEmails } from "../../../src/lib/ldap/IClient"; import Sinon = require("sinon"); export class ClientStub implements IClient { openStub: Sinon.SinonStub; closeStub: Sinon.SinonStub; searchUserDnStub: Sinon.SinonStub; searchEmailsStub: Sinon.SinonStub; searchGroupsStub: Sinon.SinonStub; modifyPasswordStub: Sinon.SinonStub; constructor() { this.openStub = Sinon.stub(); this.closeStub = Sinon.stub(); this.searchUserDnStub = Sinon.stub(); this.searchEmailsStub = Sinon.stub(); this.searchGroupsStub = Sinon.stub(); this.modifyPasswordStub = Sinon.stub(); } open(): BluebirdPromise { return this.openStub(); } close(): BluebirdPromise { return this.closeStub(); } searchUserDn(username: string): BluebirdPromise { return this.searchUserDnStub(username); } searchEmails(username: string): BluebirdPromise { return this.searchEmailsStub(username); } searchGroups(username: string): BluebirdPromise { return this.searchGroupsStub(username); } modifyPassword(username: string, newPassword: string): BluebirdPromise { return this.modifyPasswordStub(username, newPassword); } }