@@ -137,3 +137,36 @@ def kbuilder_mktgz_silent(self, *args, **kwargs):
137137 """Run self.kbuilder.mktgz with disabled output"""
138138 with mock .patch ('sys.stdout' ):
139139 return self .kbuilder .mktgz (* args , ** kwargs )
140+
141+ def test_extra_make_args (self ):
142+ """Ensure KernelBuilder handles extra_make_args properly"""
143+ extra_make_args_example = '-j10'
144+ kbuilder = kernelbuilder .KernelBuilder (
145+ self .tmpdir ,
146+ self .tmpconfig .name ,
147+ extra_make_args = extra_make_args_example
148+ )
149+ self .assertEqual (kbuilder .extra_make_args , [extra_make_args_example ])
150+
151+ def test_getrelease (self ):
152+ """Ensure get_release() handles a valid kernel version string"""
153+ mock_prepare = mock .patch ("skt.kernelbuilder.KernelBuilder.prepare" )
154+
155+ kernel_version = '4.17.0-rc6+\n '
156+ mock_popen = self .ctx_popen
157+ self .m_popen .communicate = Mock (return_value = (kernel_version , None ))
158+
159+ with mock_popen , mock_prepare :
160+ result = self .kbuilder .getrelease ()
161+ self .assertEqual (kernel_version .strip (), result )
162+
163+ def test_getrelease_regex_fail (self ):
164+ """Ensure get_release() fails if the regex doesn't match"""
165+ mock_prepare = mock .patch ("skt.kernelbuilder.KernelBuilder.prepare" )
166+
167+ mock_popen = self .ctx_popen
168+ self .m_popen .communicate = Mock (return_value = ('this_is_silly' , None ))
169+
170+ with mock_popen , mock_prepare :
171+ with self .assertRaises (Exception ):
172+ self .kbuilder .getrelease ()
0 commit comments