首页 > 编程语言 > 详细

Dive into python 实例学python (1) —— 函数和测试

时间:2014-02-13 04:46:35      阅读:366      评论:0      收藏:0      [点我收藏+]

odbchelper.py

bubuko.com,布布扣
def buildConnectionString(params):
    """Build a connection string from a dictionary
    
    Returns string.
    """
    return ";".join(["%s=%s" % (k, v) for k, v in params.items()])

if __name__ == "__main__":
    myParams = {"server":"mpilgrim",                 "database":"master",                 "uid":"sa",                 "pwd":"secret"
                }
    print buildConnectionString(myParams)
bubuko.com,布布扣

1、‘‘‘...‘‘‘是docstring

2、join()函数是连接字符串,这里用";"分号来连接,参数是字符串列表list。

 

测试代码:

odbchelpertest.py

bubuko.com,布布扣
import unittest
import odbchelper

class GoodInput(unittest.TestCase):
    def testBlank(self):
        """buildConnectionString handles empty dictionary"""
        self.assertEqual("", odbchelper.buildConnectionString({}))
    def testKnownValue(self):

        """buildConnectionString returns known result with known input"""
        params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret"}
        knownItems = params.items()
        knownItems.sort()
        knownString = repr(knownItems)
        result = odbchelper.buildConnectionString(params)
        resultItems = [tuple(e.split("=")) for e in result.split(";")]
        resultItems.sort()
        resultString = repr(resultItems)
        self.assertEqual(knownString, resultString)

class BadInput(unittest.TestCase):
    def testString(self):
        """buildConnectionString should fail with string input"""
        self.assertRaises(AttributeError, odbchelper.buildConnectionString, "")

    def testList(self):
        """buildConnectionString should fail with list input"""
        self.assertRaises(AttributeError, odbchelper.buildConnectionString, [])

    def testTuple(self):
        """buildConnectionString should fail with tuple input"""
        self.assertRaises(AttributeError, odbchelper.buildConnectionString, ())

if __name__ == "__main__":
    unittest.main()
bubuko.com,布布扣

Dive into python 实例学python (1) —— 函数和测试

原文:http://www.cnblogs.com/549294286/p/3546543.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!