def setUp(self): self.mox = mox.Mox() self.mox.StubOutWithMock(cros_bundle_lib, 'ConvertRecoveryToSsd') self.mox.StubOutWithMock(cros_bundle_lib, '_GetResourceUrlAndPath') self.mox.StubOutWithMock(cros_bundle_lib, '_HandleFactoryImageAndShim') self.mox.StubOutWithMock(cros_bundle_lib, 'MakeMd5') self.options = self.mox.CreateMock(optparse.Values) self.options.board = 'board' self.options.board2 = 'board2' self.options.factory = 'factory' self.options.fsi = True self.options.recovery = 'recovery' self.options.recovery2 = 'recovery' self.options.release = 'release' self.options.release2 = 'release2' self.options.shim = 'shim' self.rec_name = 'rec_name' self.rec_name2 = 'rec_name2' self.rel_name = 'rel_name' self.rel_name2 = 'rel_name2' self.rec_url = 'rec_url' self.rec_url2 = 'rec_url2' self.rel_url = 'rel_url' self.rel_url2 = 'rel_url2' cros_bundle_lib._GetResourceUrlAndPath( mox.IgnoreArg(), cros_bundle_lib.GetRecoveryName, self.options.board, self.options.recovery, 0).AndReturn((self.rec_url, self.rec_name))
def testFetchImagesGoodWithOneSetOfFiles(self): """Fetch success for one set of recovery/release files.""" self.options.recovery2 = None self.options.release2 = None expected = dict(ssd=self.rel_name, ssd2=None, recovery=self.rec_name, recovery2=None) cros_bundle_lib._GetResourceUrlAndPath( mox.IgnoreArg(), cros_bundle_lib.GetReleaseName, self.options.board, self.options.release, 0).AndReturn((self.rel_url, self.rel_name)) self.mox.ReplayAll() self.assertEqual(expected, cros_bundle_lib.FetchImages(self.options))
def testFetchImagesGoodWithOneReleaseTwoRecovery(self): """Fetch success for one release file and two recovery files.""" self.options.release2 = None expected = dict(ssd=self.rel_name, ssd2=self.rel_name2, recovery=self.rec_name, recovery2=self.rec_name2) cros_bundle_lib._GetResourceUrlAndPath( mox.IgnoreArg(), cros_bundle_lib.GetReleaseName, self.options.board, self.options.release, 0).AndReturn((self.rel_url, self.rel_name)) cros_bundle_lib._GetResourceUrlAndPath( mox.IgnoreArg(), cros_bundle_lib.GetRecoveryName, self.options.board2, self.options.recovery2, 0).AndReturn((self.rec_url2, self.rec_name2)) cros_bundle_lib.ConvertRecoveryToSsd( self.rec_name2, self.options).AndReturn(self.rel_name2) self.mox.ReplayAll() self.assertEqual(expected, cros_bundle_lib.FetchImages(self.options))
def testFetchImagesGoodWithOneSetOfFilesAndNotFsi(self): """Fetch success for one set of recovery/release files and non-FSI.""" self.options.fsi = False self.options.recovery2 = None self.options.release2 = None absfactorybin = 'absfactorybin' shim_name = 'shim_name' expected = dict(ssd=self.rel_name, ssd2=None, recovery=self.rec_name, recovery2=None, factorybin=absfactorybin, shim=shim_name) cros_bundle_lib._GetResourceUrlAndPath( mox.IgnoreArg(), cros_bundle_lib.GetReleaseName, self.options.board, self.options.release, 0).AndReturn((self.rel_url, self.rel_name)) cros_bundle_lib._HandleFactoryImageAndShim( self.options, 0).AndReturn((absfactorybin, shim_name)) self.mox.ReplayAll() self.assertEqual(expected, cros_bundle_lib.FetchImages(self.options))
def testGetResourceUrlAndPath(self): test_url = 'url' test_pat = 'pat' test_desc = 'desc' test_path = 'path' cros_bundle_lib.GetFactoryName('board', 'factory', 0).AndReturn( (test_url, test_pat)) cros_bundle_lib.DetermineThenDownloadCheckMd5( test_url, test_pat, WORKDIR, test_desc).AndReturn(test_path) self.mox.ReplayAll() actual_url, actual_path = cros_bundle_lib._GetResourceUrlAndPath( test_desc, cros_bundle_lib.GetFactoryName, 'board', 'factory', 0 ) self.assertEqual(test_url, actual_url) self.assertEqual(test_path, actual_path)