blob: 6d05faefd3dd7e606f2613dd99f3b77e9866307c [file] [log] [blame]
mbligh421a4f02008-07-16 20:38:22 +00001#!/usr/bin/python
2
3import unittest
4import common
5from autotest_lib.client.common_lib.test_utils import mock
6from autotest_lib.server.hosts import SSHHost
7from autotest_lib.server import source_kernel, autotest
8
9
10class TestSourceKernel(unittest.TestCase):
11 def setUp(self):
12 self.god = mock.mock_god()
13 self.host = self.god.create_mock_class(SSHHost, "host")
14 self.god.stub_class(source_kernel.autotest, "Autotest")
15 self.kernel_autotest = source_kernel.autotest.Autotest.expect_new()
16 self.k = "kernel"
17 self.source_kernel = source_kernel.SourceKernel(self.k)
18
19 # call configure to set config_file
20 self.config = "config_file"
21 self.source_kernel.configure(self.config)
22
23
24 def tearDown(self):
25 self.god.unstub_all()
26
27
28 def test_install(self):
29 # setup
30 ctlfile = ("testkernel = job.kernel('%s')\n"
31 "testkernel.install()\n"
32 "testkernel.add_to_bootloader()\n" %(self.k))
33
34 # record
35 self.kernel_autotest.install.expect_call(self.host)
36 self.host.get_tmp_dir.expect_call().and_return("tmpdir")
37 self.kernel_autotest.run.expect_call(ctlfile, "tmpdir", self.host)
38
39 # run and check
40 self.source_kernel.install(self.host)
41 self.god.check_playback()
42
43
44 def test_build(self):
45 # setup
46 patches = "patches"
47 self.source_kernel.patch(patches)
48 ctlfile = ("testkernel = job.kernel('%s')\n"
49 "testkernel.patch('%s')\n"
50 "testkernel.config('%s')\n"
51 "testkernel.build()\n" % (self.k, patches, self.config))
52
53 # record
54 self.host.get_tmp_dir.expect_call().and_return("tmpdir")
55 self.kernel_autotest.run.expect_call(ctlfile, "tmpdir", self.host)
56
57 # run and check
58 self.source_kernel.build(self.host)
59 self.god.check_playback()
60
61
62if __name__ == "__main__":
63 unittest.main()