test/dhcp.py
author Tero Marttila <terom@fixme.fi>
Sun, 12 Jul 2009 00:51:08 +0300
changeset 7 0f9cae2d7147
permissions -rwxr-xr-x
restructure, break
7
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     1
#!/usr/bin/env python2.5
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     2
"""
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     3
    Test dhcp_conf
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     4
"""
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     5
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     6
import dhcp_conf as dhcpc
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     7
import test_conf, dhcp, addr
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     8
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     9
import unittest
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    10
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    11
class TestDHCPConf (test_conf._TestConfBase) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    12
    def assert_stmt (self, stmt, line) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    13
        """
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    14
            Formats the given Statement, and compares the output against the given line.
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    15
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    16
            Note that the dhcpc.Statement doesn't have a working fmt_lines implementation.
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    17
        """
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    18
        
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    19
        self.assertEqual(stmt._fmt_data(), line)
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    20
    
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    21
    def test_comment (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    22
        self.assert_obj(dhcpc.Comment("foo bar"),                           [ "# foo bar" ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    23
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    24
    def test_section (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    25
        self.assert_obj(dhcpc.Section(comment="test"),                      [ "# test" ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    26
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    27
        self.assert_obj(dhcpc.Section(params=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    28
                dhcpc.Parameter("param0"), None
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    29
            ], comment="foo"), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    30
                "# foo",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    31
                "param0;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    32
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    33
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    34
    def test_statement (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    35
        self.assert_stmt(dhcpc.Statement("stmt0"),                           "stmt0")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    36
        self.assert_stmt(dhcpc.Statement("stmt1", [ "this", "that" ]),       "stmt1 this, that")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    37
        self.assert_stmt(dhcpc.Statement("stmt2", dhcpc.Literal("...")),     "stmt2 ...")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    38
        self.assert_stmt(dhcpc.Statement("stmt3", u"quux"),                  "stmt3 quux")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    39
        self.assert_stmt(dhcpc.Statement("stmt4", "bar"),                    "stmt4 bar")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    40
        self.assert_stmt(dhcpc.Statement("stmt5", 1),                        "stmt5 1")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    41
        self.assert_stmt(dhcpc.Statement("stmt6", 1, None, 2),               "stmt6 1 2")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    42
   
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    43
    def test_literal (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    44
        self.assert_obj(dhcpc.Literal("///"),                               [ "///" ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    45
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    46
    def test_parameter (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    47
        self.assert_obj(dhcpc.Parameter("param0", "this", 13, "that"),      [ "param0 this 13 that;" ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    48
        self.assert_obj(dhcpc.Parameter("param1", comment="testing"),       [ "# testing", "param1;" ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    49
    
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    50
    def test_declaration (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    51
        self.assert_obj(dhcpc.Declaration("decl0", ["arg0", "arg1"], [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    52
            dhcpc.Parameter("param0"),
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    53
            None
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    54
        ], [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    55
            dhcpc.Declaration("decl0.0", params=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    56
                dhcpc.Parameter("param0.0.1", "value")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    57
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    58
        ], comment="foo"),  [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    59
            "# foo",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    60
            "decl0 arg0 arg1 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    61
            "\tparam0;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    62
            "\tdecl0.0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    63
            "\t\tparam0.0.1 value;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    64
            "\t}",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    65
            "}",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    66
        ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    67
    
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    68
    def test_shared_network (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    69
        self.assert_obj(dhcpc.SharedNetwork("net0", params=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    70
            dhcpc.Parameter("param0")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    71
        ]), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    72
            "shared-network net0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    73
            "\tparam0;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    74
            "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    75
        ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    76
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    77
    def test_subnet (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    78
        self.assert_obj(dhcpc.Subnet(addr.Network("194.197.235.0/24"), params=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    79
            dhcpc.Parameter("param0")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    80
        ]), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    81
            "subnet 194.197.235.0 netmask 255.255.255.0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    82
            "\tparam0;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    83
            "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    84
        ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    85
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    86
    def test_group (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    87
        self.assert_obj(dhcpc.Group(decls=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    88
            dhcpc.Declaration("decl0.0", params=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    89
                dhcpc.Parameter("param0.0.1", "value")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    90
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    91
        ]), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    92
            "group {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    93
            "\tdecl0.0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    94
            "\t\tparam0.0.1 value;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    95
            "\t}",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    96
            "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    97
        ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    98
    
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    99
    def test_host (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   100
        self.assert_obj(dhcpc.Host("test-hostname", params=[
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   101
            dhcpc.Parameter("param0")
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   102
        ]), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   103
            "host test-hostname {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   104
            "\tparam0;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   105
            "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   106
        ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   107
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   108
    def test_option (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   109
        self.assert_obj(dhcpc.Option("foo", "example.com"), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   110
            "option foo example.com;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   111
        ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   112
    
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   113
class TestDHCP (_TestConfObj) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   114
    def test_host (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   115
        self.assert_obj(dhcp.Host("testhost", addr.MAC("12:34:56:78:90:ab"), addr.IP("1.2.3.4"), comment="foo"), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   116
                "# foo",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   117
                "host testhost {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   118
                "\thardware ethernet 12:34:56:78:90:ab;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   119
                "\tfixed-address 1.2.3.4;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   120
                "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   121
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   122
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   123
    def test_subnet (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   124
        self.assert_obj(dhcp.Subnet(addr.Network("1.2.3.0/24"), comment="bar"), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   125
                "# bar",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   126
                "subnet 1.2.3.0 netmask 255.255.255.0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   127
                "\toption routers 1.2.3.1;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   128
                "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   129
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   130
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   131
        self.assert_obj(dhcp.Subnet(addr.Network("1.2.3.0/24"), router_idx=10, range=(20, 30), unknown_clients='allow'), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   132
                "subnet 1.2.3.0 netmask 255.255.255.0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   133
                "\toption routers 1.2.3.10;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   134
                "\trange 1.2.3.20 1.2.3.30;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   135
                "\tallow unknown-clients;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   136
                "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   137
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   138
    
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   139
    def test_config (self) :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   140
        self.assert_obj(dhcp.Config(
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   141
                settings        = { 'foo-setting': 'someval' }, 
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   142
                options         = { 'bar-opt': ['one', 'two'] },
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   143
                shared_network  = "FOO-NET",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   144
                subnets         = [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   145
                        dhcp.Subnet(addr.Network("1.2.3.0/24"))
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   146
                    ],
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   147
                hosts           = [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   148
                        dhcp.Host("testhost", addr.MAC("12:34:56:78:90:ab"), addr.IP("1.2.3.4"))
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   149
                    ],
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   150
            ), [
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   151
                "foo-setting someval;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   152
                "option bar-opt one, two;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   153
                "shared-network FOO-NET {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   154
                "\tsubnet 1.2.3.0 netmask 255.255.255.0 {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   155
                "\t\toption routers 1.2.3.1;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   156
                "\t}",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   157
                "}",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   158
                "host testhost {",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   159
                "\thardware ethernet 12:34:56:78:90:ab;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   160
                "\tfixed-address 1.2.3.4;",
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   161
                "}"
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   162
            ])
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   163
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   164
if __name__ == '__main__' :
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   165
    unittest.main()
0f9cae2d7147 restructure, break
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   166