Statistics
| Branch: | Tag: | Revision:

root / test / mocks.py @ d4fa5c23

History | View | Annotate | Download (2.1 kB)

1 2f31098c Iustin Pop
#
2 a8083063 Iustin Pop
#
3 a8083063 Iustin Pop
4 a8083063 Iustin Pop
# Copyright (C) 2006, 2007 Google Inc.
5 a8083063 Iustin Pop
#
6 a8083063 Iustin Pop
# This program is free software; you can redistribute it and/or modify
7 a8083063 Iustin Pop
# it under the terms of the GNU General Public License as published by
8 a8083063 Iustin Pop
# the Free Software Foundation; either version 2 of the License, or
9 a8083063 Iustin Pop
# (at your option) any later version.
10 a8083063 Iustin Pop
#
11 a8083063 Iustin Pop
# This program is distributed in the hope that it will be useful, but
12 a8083063 Iustin Pop
# WITHOUT ANY WARRANTY; without even the implied warranty of
13 a8083063 Iustin Pop
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 a8083063 Iustin Pop
# General Public License for more details.
15 a8083063 Iustin Pop
#
16 a8083063 Iustin Pop
# You should have received a copy of the GNU General Public License
17 a8083063 Iustin Pop
# along with this program; if not, write to the Free Software
18 a8083063 Iustin Pop
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19 a8083063 Iustin Pop
# 02110-1301, USA.
20 a8083063 Iustin Pop
21 a8083063 Iustin Pop
22 a8083063 Iustin Pop
"""Module implementing a fake ConfigWriter"""
23 a8083063 Iustin Pop
24 89e1fc26 Iustin Pop
from ganeti import utils
25 a8083063 Iustin Pop
26 75a5f456 Michael Hanselmann
27 75a5f456 Michael Hanselmann
FAKE_CLUSTER_KEY = ("AAAAB3NzaC1yc2EAAAABIwAAAQEAsuGLw70et3eApJ/ZEJkAVZogIrm"
28 75a5f456 Michael Hanselmann
                    "EYPQJvb1ll52Ti0nr80Wztxibaa8bYGzY22rQIAloIlePeTGcJceAYK"
29 75a5f456 Michael Hanselmann
                    "PZgm0I/Mp2EUGg2NVsQZIzasz6cW0vYuiUbF9GkVlROmvOAykT58RfM"
30 75a5f456 Michael Hanselmann
                    "L8RhPrjrQxZc+NXgZtgDugYSZcXHDLUyWM1xKUoYy0MqYG6ZXCC/Zno"
31 75a5f456 Michael Hanselmann
                    "RThhmjOJgEmvwrMcTWQjmzH3NeJAxaBsEHR8tiVZ/Y23C/ULWLyNT6R"
32 75a5f456 Michael Hanselmann
                    "fB+DE7IovsMQaS+83AK1Teg7RWNyQczachatf/JT8VjUqFYjJepPjMb"
33 75a5f456 Michael Hanselmann
                    "vYdB2nQds7/+Bf40C/OpbvnAxna1kVtgFHAo18cQ==")
34 75a5f456 Michael Hanselmann
35 75a5f456 Michael Hanselmann
36 a8083063 Iustin Pop
class FakeConfig:
37 a8083063 Iustin Pop
    """Fake configuration object"""
38 a8083063 Iustin Pop
39 a8083063 Iustin Pop
    def IsCluster(self):
40 a8083063 Iustin Pop
        return True
41 a8083063 Iustin Pop
42 a8083063 Iustin Pop
    def GetNodeList(self):
43 a8083063 Iustin Pop
        return ["a", "b", "c"]
44 a8083063 Iustin Pop
45 a8083063 Iustin Pop
    def GetMaster(self):
46 89e1fc26 Iustin Pop
        return utils.HostInfo().name
47 880478f8 Iustin Pop
48 75a5f456 Michael Hanselmann
    def GetHostKey(self):
49 75a5f456 Michael Hanselmann
        return FAKE_CLUSTER_KEY
50 75a5f456 Michael Hanselmann
51 880478f8 Iustin Pop
52 880478f8 Iustin Pop
class FakeSStore:
53 880478f8 Iustin Pop
    """Fake simplestore object"""
54 880478f8 Iustin Pop
55 5fcdc80d Iustin Pop
    def GetClusterName(self):
56 5fcdc80d Iustin Pop
        return "test.cluster"
57 5fcdc80d Iustin Pop
58 880478f8 Iustin Pop
    def GetMasterNode(self):
59 89e1fc26 Iustin Pop
        return utils.HostInfo().name
60 2395c322 Iustin Pop
61 2395c322 Iustin Pop
62 2395c322 Iustin Pop
class FakeProc:
63 2395c322 Iustin Pop
    """Fake processor object"""
64 2395c322 Iustin Pop
65 2395c322 Iustin Pop
    def LogWarning(self, msg):
66 2395c322 Iustin Pop
        pass
67 2395c322 Iustin Pop
68 2395c322 Iustin Pop
    def LogInfo(self, msg):
69 2395c322 Iustin Pop
        pass
70 f4555db2 Guido Trotter
71 f4555db2 Guido Trotter
class FakeContext:
72 f4555db2 Guido Trotter
    """Fake context object"""
73 f4555db2 Guido Trotter
74 f4555db2 Guido Trotter
    def __init__(self):
75 f4555db2 Guido Trotter
        self.cfg = FakeConfig()
76 f4555db2 Guido Trotter
        # TODO: decide what features a mock Ganeti Lock Manager must have
77 f4555db2 Guido Trotter
        self.GLM = None