You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							39 lines
						
					
					
						
							1.3 KiB
						
					
					
				
			
		
		
	
	
							39 lines
						
					
					
						
							1.3 KiB
						
					
					
				/* global describe, it */
 | 
						|
 | 
						|
var assert = require('assert')
 | 
						|
var isGenerator = require('./')
 | 
						|
 | 
						|
describe('is-generator', function () {
 | 
						|
  describe('generators', function () {
 | 
						|
    it('should return false with non-generators', function () {
 | 
						|
      assert(!isGenerator(null))
 | 
						|
      assert(!isGenerator(25))
 | 
						|
      assert(!isGenerator('test'))
 | 
						|
      assert(!isGenerator(/* istanbul ignore next */ function () {}))
 | 
						|
      assert(!isGenerator(/* istanbul ignore next */ function * () {}))
 | 
						|
    })
 | 
						|
 | 
						|
    it('should return true with a generator', function () {
 | 
						|
      assert(isGenerator((/* istanbul ignore next */ function * () {})()))
 | 
						|
    })
 | 
						|
  })
 | 
						|
 | 
						|
  describe('generator functions', function () {
 | 
						|
    it('should return false with non-generator function', function () {
 | 
						|
      assert(!isGenerator.fn(null))
 | 
						|
      assert(!isGenerator.fn(25))
 | 
						|
      assert(!isGenerator.fn('test'))
 | 
						|
      assert(!isGenerator.fn(/* istanbul ignore next */ function () {}))
 | 
						|
 | 
						|
      var noConstructorFn = /* istanbul ignore next */ function () {}
 | 
						|
      noConstructorFn.constructor = undefined
 | 
						|
 | 
						|
      assert(!isGenerator.fn(noConstructorFn))
 | 
						|
    })
 | 
						|
 | 
						|
    it('should return true with a generator function', function () {
 | 
						|
      assert(isGenerator.fn(/* istanbul ignore next */ function * () { yield 'something' }))
 | 
						|
    })
 | 
						|
  })
 | 
						|
})
 |