suite ".transform/condition/All/Self() methods", ()->
	test "Can only accept function values", ()->
		window.origLog = console.warn
		console.warn = chai.spy()
		timesCalled = 0

		SimplyBind(0).of({}).to(()->).transform(()->)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 0)

		SimplyBind(0).of({}).to(()->).transformAll(()->)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 0)
						
		SimplyBind(0).of({}).to(()->).condition(()->)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 0)
						
		SimplyBind(0).of({}).to(()->).conditionAll(()->)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 0)
						
		SimplyBind(0).of({}).transformSelf(()->)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 0)
		
		SimplyBind(0).of({}).to(()->).transform([])
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)

		SimplyBind(0).of({}).to(()->).transformAll({})
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		SimplyBind(0).of({}).to(()->).conditionAll(new Date())
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		if isBrowser
			SimplyBind(0).of({}).to(()->).condition($('<div />')[0])
			expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		if window.Map and window.Set and window.Symbol
			SimplyBind(0).of({}).to(()->).transform(new Map())
			expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
			
			SimplyBind(0).of({}).to(()->).transformAll(new WeakMap())
			expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
			
			SimplyBind(0).of({}).to(()->).condition(new Set())
			expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
			
			SimplyBind(0).of({}).to(()->).conditionAll(new WeakSet())
			expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
			SimplyBind(0).of({}).transformSelf(Symbol(0))
			expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		SimplyBind(0).of({}).to(()->).transform(SimplyBind('prop1').of(objectA))
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)

		SimplyBind(0).of({}).to(()->).transformAll('s')
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		SimplyBind(0).of({}).to(()->).condition(0)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		SimplyBind(0).of({}).to(()->).conditionAll(true)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		SimplyBind(0).of({}).transformSelf(null)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)
		
		SimplyBind(0).of({}).transformSelf(undefined)
		expect(console.warn).to.have.been.called.exactly(timesCalled += 1)

		console.warn = origLog
