def test_list_refs(self, lib, ref): fp = Mock() path = '/tmp/path-1' commits = [ (1, [{'version': 1}]), (2, [{'version': 2}]) ] refs = ( 2, { 'branch:1': 'commit:1', 'branch:2': 'commit:2' } ) _lib = Mock() lib_repo = Mock() lib_repo.list_refs.return_value = refs lib_repo.load_variant.side_effect = commits _lib.Gio.File.new_for_path.return_value = fp _lib.OSTree.ObjectType.COMMIT = 'COMMIT' _lib.OSTree.Repo.new.return_value = lib_repo lib.return_value = _lib ref_objects = [Mock(), Mock()] ref.side_effect = ref_objects # test repo = Repository(path) listed = repo.list_refs() # validation lib.assert_called_with() _lib.OSTree.Repo.new.assert_called_once_with(fp) lib_repo.open.assert_called_once_with(None) lib_repo.list_refs.assert_called_once_with(None, None) self.assertEqual( ref.call_args_list, [ (('branch:1', 'commit:1', {'version': 1}), {}), (('branch:2', 'commit:2', {'version': 2}), {}), ]) self.assertEqual( lib_repo.load_variant.call_args_list, [ (('COMMIT', 'commit:1'), {}), (('COMMIT', 'commit:2'), {}), ]) self.assertEqual(listed, ref_objects)
def test_list_refs(self, lib, ref): path = '/tmp/path-1' commits = [ (1, [{'version': 1}]), (2, [{'version': 2}]) ] refs = ( 2, { 'branch:1': 'commit:1', 'branch:2': 'commit:2' } ) _lib = Mock() lib_repo = Mock() lib_repo.list_refs.return_value = refs lib_repo.load_variant.side_effect = commits _lib.OSTree.ObjectType.COMMIT = 'COMMIT' lib.return_value = _lib ref_objects = [Mock(), Mock()] ref.side_effect = ref_objects # test repo = Repository(path) repo.open = Mock() repo.impl = lib_repo listed = repo.list_refs() # validation lib.assert_called_with() repo.open.assert_called_once_with() lib_repo.list_refs.assert_called_once_with(None, None) self.assertEqual( ref.call_args_list, [ (('branch:1', 'commit:1', {'version': 1}), {}), (('branch:2', 'commit:2', {'version': 2}), {}), ]) self.assertEqual( lib_repo.load_variant.call_args_list, [ (('COMMIT', 'commit:1'), {}), (('COMMIT', 'commit:2'), {}), ]) self.assertEqual(listed, ref_objects)