1234567891011121314151617181920212223242526272829303132 |
- 'use strict';
- var PubSub = require('../src/pubsub'),
- TestHelper = require('../test/helper'),
- assert = require('referee').assert,
- sinon = require('sinon');
- describe( 'subscribeOnce method', function() {
- it( 'should return PubSub', function() {
- var func = function(){ return undefined; },
- message = TestHelper.getUniqueString(),
- pubSub = PubSub.subscribeOnce( message , func );
- assert.same( pubSub, PubSub );
- } );
- it( 'must be executed only once', function() {
- var topic = TestHelper.getUniqueString(),
- spy = sinon.spy();
-
- PubSub.subscribeOnce( topic, spy );
- for ( var i = 0; i < 3; i++ ) {
- PubSub.publishSync( topic, TestHelper.getUniqueString() );
- }
- assert( spy.calledOnce );
- } );
- } );
|