29 lines
973 B
Python
29 lines
973 B
Python
from xmodule.modulestore.xml import XMLModuleStore
|
|
from nose.tools import assert_equals
|
|
from tempfile import mkdtemp
|
|
from fs.osfs import OSFS
|
|
|
|
|
|
def check_export_roundtrip(data_dir):
|
|
print "Starting import"
|
|
initial_import = XMLModuleStore('org', 'course', data_dir, eager=True)
|
|
initial_course = initial_import.course
|
|
|
|
print "Starting export"
|
|
export_dir = mkdtemp()
|
|
fs = OSFS(export_dir)
|
|
xml = initial_course.export_to_xml(fs)
|
|
with fs.open('course.xml', 'w') as course_xml:
|
|
course_xml.write(xml)
|
|
|
|
print "Starting second import"
|
|
second_import = XMLModuleStore('org', 'course', export_dir, eager=True)
|
|
|
|
print "Checking key equality"
|
|
assert_equals(initial_import.modules.keys(), second_import.modules.keys())
|
|
|
|
print "Checking module equality"
|
|
for location in initial_import.modules.keys():
|
|
print "Checking", location
|
|
assert_equals(initial_import.modules[location], second_import.modules[location])
|