From: Brett K. <in...@us...> - 2005-08-10 16:35:15
|
Update of /cvsroot/wtfibs/WTFibs/test In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23911/test Added Files: test_Backgammon.py Log Message: Fixed bug in Backgammon, added tests file --- NEW FILE: test_Backgammon.py --- ## Copyright (c) 2005 Brett Kelly ## All rights reserved. ## Redistribution and use in source and binary forms, with or without ## modification, are permitted provided that the following conditions are met: ## * Redistributions of source code must retain the above copyright notice, ## this list of conditions, and the following disclaimer. ## * Redistributions in binary form must reproduce the above copyright notice, ## this list of conditions, and the following disclaimer in the ## documentation and/or other materials provided with the distribution. ## * Neither the name of the author of this software nor the name of ## contributors to this software may be used to endorse or promote products ## derived from this software without specific prior written permission. ## THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED ## WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE ## DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR ## SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER ## CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ## OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ## Portions of the included source code are copyright by its original author(s) ## and remain subject to its associated license. import sys ## this way is easiest, i think ## just add the path to your working src directory to sys.path #sys.path.append("C:/Development/WTFibs/trunk/src") sys.path.append("src") import py.test import Backgammon def test_Player(): p = Backgammon.Player("inkedmn",1500.0,"White") assert hasattr(p,'name') assert hasattr(p,'rating') assert hasattr(p,'color') py.test.raises(Exception, "Player()") py.test.raises(Exception, "Player('TestName')") py.test.raises(Exception, "Player(12,1500.0)") def test_Checker(): c = Backgammon.Checker("White") assert hasattr(c,'color') py.test.raises(Exception, "Checker()") py.test.raises(Exception, "Checker(2)") def test_BoardPoint(): p = Backgammon.BoardPoint(1) assert hasattr(p,'pos') assert hasattr(p,'checkers') assert hasattr(p,'push') assert hasattr(p,'pop') assert p.pos == 1 assert len(p.checkers) == 0 p.push(Backgammon.Checker("White")) assert len(p.checkers) == 1 p.pop() assert len(p.checkers) == 0 assert type(p.pop()) == type(None) def test_Die(): d = Backgammon.Die() assert d.sides == 6 assert d.sides != 0 assert d.face != 0 and d.face <= 6 cnt = 10 while cnt: d.roll() assert d.face >= 1 and d.face <= 6 cnt -= 1 |