Mock/Stub-Konstruktor

Ich habe den folgenden code:

class Clients
  constructor : ->
    @clients = []

  createClient : (name)->

    client = new Client name
    @clients.push client

Ich bin testing mit Jasmine BDD wie diese:

describe 'Test Constructor', ->

  it 'should create a client with the name foo', ->

    clients = new clients
    clients.createClient 'Foo'
    Client.should_have_been_called_with 'Foo'

  it 'should add Foo to clients', ->

    clients = new clients
    clients.createClient 'Foo'

    expect(clients.clients[0]).toEqual SomeStub

In meinem ersten test möchte ich prüfen, ob der Konstruktor aufgerufen wird mit dem richtigen Namen. In meinem zweiten ich will einfach nur, um zu bestätigen, dass alles, was heraus kam der neue Client wurde Hinzugefügt, um das array.

Ich bin mit Jasmine BDD und es ist ein Weg, um Spione/mocks/stubs, aber es scheint, es ist nicht möglich, test-Konstruktor. Also ich bin auf der Suche in einer Art und Weise zu testen, der Konstruktor wäre es schön, wenn es einen Weg gibt, dass ich brauche nicht eine extra Bibliothek, aber ich bin für alles offen.

InformationsquelleAutor Pickels | 2011-09-25
Schreibe einen Kommentar