File: test_err_handle.py

package info (click to toggle)
pymssql 2.1.4%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 952 kB
  • sloc: python: 2,872; sh: 240; makefile: 148; ansic: 7
file content (83 lines) | stat: -rw-r--r-- 2,364 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
from datetime import datetime
import unittest

import _mssql


class ErrHandleTests(unittest.TestCase):

    def test01DBError(self):
        connection = None
        severity = 8
        dberr = 101
        oserr = 0
        dberrstr = "toblerone1"
        oserrstr = None

        expect = "DB-Lib error message %d, severity %d:\n%s\n" % (
            dberr, severity, dberrstr)
        expect = expect.encode('UTF-8')

        values = _mssql.test_err_handler(
            connection, severity, dberr, oserr, dberrstr, oserrstr)
        self.assertEqual(values[0], 2)
        self.assertEqual(values[1], expect)

    def test02OSError(self):
        connection = None
        # EXCOMM
        severity = 9
        dberr = 102
        oserr = 1001
        dberrstr = "toblerone2"
        oserrstr = "scorpion"

        expect = (
            "DB-Lib error message %d, severity %d:\n%s\n"
            "Net-Lib error during %s (%d)\n" % (
                dberr, severity, dberrstr, oserrstr, oserr))
        expect = expect.encode('UTF-8')

        values = _mssql.test_err_handler(
            connection, severity, dberr, oserr, dberrstr, oserrstr)
        self.assertEqual(values[0], 2)
        self.assertEqual(values[1], expect)

    def test03OSError(self):
        connection = None
        severity = 10
        dberr = 103
        oserr = 1003
        dberrstr = "toblerone3"
        oserrstr = "cabezon"

        expect = (
            "DB-Lib error message %d, severity %d:\n%s\n"
            "Operating System error during %s (%d)\n" % (
                dberr, severity, dberrstr, oserrstr, oserr))
        expect = expect.encode('UTF-8')

        values = _mssql.test_err_handler(
            connection, severity, dberr, oserr, dberrstr, oserrstr)
        self.assertEqual(values[0], 2)
        self.assertEqual(values[1], expect)

    def test04NoError(self):
        connection = None

        # smaller than min error severity, so no output should be generated
        severity = 5
        dberr = 10
        oserr = 4444
        dberrstr = "toblerone4"
        oserrstr = "limpet"

        expect = b""

        values = _mssql.test_err_handler(
            connection, severity, dberr, oserr, dberrstr, oserrstr)
        self.assertEqual(values[0], 2)
        self.assertEqual(values[1], expect)

if __name__ == "__main__":
    unittest.main()