summaryrefslogtreecommitdiffstats
path: root/src/software/test/rpmcache.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/software/test/rpmcache.py')
-rw-r--r--src/software/test/rpmcache.py12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/software/test/rpmcache.py b/src/software/test/rpmcache.py
index c2dde24..6dc45a0 100644
--- a/src/software/test/rpmcache.py
+++ b/src/software/test/rpmcache.py
@@ -24,15 +24,14 @@ Creation and manipulation utilities with rpm cache for software tests.
"""
import copy
-import datetime
import os
-import pickle
+import json
import random
import re
from collections import defaultdict
from subprocess import call, check_output, CalledProcessError
-from package import Package
+from package import Package, PackageEncoder, from_json
import util
DB_BACKUP_FILE = 'lmi_software_test_cache'
@@ -425,8 +424,9 @@ def write_pkgdb(safe_pkgs, dangerous_pkgs, cache_dir=''):
Writes package database into a file named DB_BACKUP_FILE.
"""
with open(os.path.join(cache_dir, DB_BACKUP_FILE), 'w') as db_file:
- data = (datetime.datetime.now(), safe_pkgs, dangerous_pkgs)
- pickle.dump(data, db_file)
+ data = (safe_pkgs, dangerous_pkgs)
+ json.dump(data, db_file, cls=PackageEncoder,
+ sort_keys=True, indent=4, separators=(',', ': '))
def load_pkgdb(cache_dir=''):
"""
@@ -434,7 +434,7 @@ def load_pkgdb(cache_dir=''):
@return (safe, dangerous) package lists loaded from file
"""
with open(os.path.join(cache_dir, DB_BACKUP_FILE), 'r') as db_file:
- _, safe, dangerous = pickle.load(db_file)
+ safe, dangerous = json.load(db_file, object_hook=from_json)
#print "Loaded package database from: %s" % date_time
return safe, dangerous