1
0
Fork 0

Moved util abstract method tests into their own test case

closure/master
Mike Gerwitz 2010-12-27 22:24:41 -05:00
parent 69391f9b48
commit 28cf2d0e2b
2 changed files with 49 additions and 21 deletions

View File

@ -22,11 +22,10 @@
* @package test
*/
var common = require( './common' ),
assert = require( 'assert' ),
Class = common.require( 'class' ),
abstractMethod = common.require( 'util' ).createAbstractMethod,
util = common.require( 'util' );
var common = require( './common' ),
assert = require( 'assert' ),
Class = common.require( 'class' ),
util = common.require( 'util' );
// not abstract
var Foo = Class.extend( {} );
@ -68,22 +67,6 @@ var ConcreteFoo = AbstractFoo.extend(
});
assert.ok(
( abstractMethod() instanceof Function ),
"abstractMethod() returns a function"
);
assert.ok(
( util.isAbstractMethod( abstractMethod() ) ),
"Functions returned by abstractMethod() are considered to be abstract by " +
"util.isAbstractMethod"
);
assert.throws( function()
{
abstractMethod()();
}, Error, "Abstract methods cannot be called" );
assert.ok(
( Foo.isAbstract instanceof Function ),
"All classes should have an isAbstract() method"

View File

@ -0,0 +1,45 @@
/**
* Tests util abstract functions
*
* Copyright (C) 2010 Mike Gerwitz
*
* This file is part of ease.js.
*
* ease.js is free software: you can redistribute it and/or modify it under the
* terms of the GNU Lesser General Public License as published by the Free
* Software Foundation, either version 3 of the License, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
* for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* @author Mike Gerwitz
* @package test
*/
var common = require( './common' ),
assert = require( 'assert' ),
util = common.require( 'util' );
assert.ok(
( util.createAbstractMethod() instanceof Function ),
"abstractMethod() returns a function"
);
assert.ok(
( util.isAbstractMethod( util.createAbstractMethod() ) ),
"Functions returned by abstractMethod() are considered to be abstract by " +
"util.isAbstractMethod"
);
assert.throws( function()
{
util.createAbstractMethod()();
}, Error, "Abstract methods cannot be called" );