コード例 #1
0
 def handle(self, **options):
     args = options['json_file']
     if len(args) == 0:
         raise CommandError("Must supply at least one json file to import")
     verbosity = options["verbosity"]
 #   test = options["test"]
     test = False
     try:
         for jf in args:
             f = open(jf)
             data = json.load(f)
             fam = import_widget_data(data)
             f.close()
             if test:
                 # Will always fail because of last_updated date
                 data1 = export_widget_data(fam)
                 if export_widget_data(fam) == data:
                     if verbosity > 0:
                         print >> self.stdout, "Correctly imported data for %s" % fam.url
                         
                 else:
                     raise CommandError("Incorrect import of %s  Re-export and compare to file %s" % (fam.url, jf))
             else:
                 if verbosity > 0:
                     print >> self.stdout, "Successfully imported data for %s" % fam.url
     except ImportExportException, e:
         raise CommandError(unicode(e))
コード例 #2
0
 def test_dump_widget_data(self):
     widget_data_sets = [
         (
             "national_leadership",
             'test_exports/d_national_leadership.json',
         ),
         (
             'race_rings',
             'test_exports/d_race_rings.json',
         ),
         (
             'rivers',
             'test_exports/d_rivers.json',
         ),
     ]
     for url, fn in widget_data_sets:
         fp = open(fn)
         file_dump = json.load(fp)
         raw_dump = export_widget_data(url)
         json_dump = jsonize(raw_dump)
         cooked_json = json.loads(json_dump)
         self.assertTrue(
             json_equal(file_dump,
                        cooked_json,
                        url,
                        ignore_keys=[
                            "widget_last_updated",
                        ]))
コード例 #3
0
 def handle(self, *args, **options):
     if len(args) != 1:
         raise CommandError("Must supply one and only one argument - the widget family url")
     try:
         data = export_widget_data(args[0])
     except ImportExportException, e:
         raise CommandError(unicode(e))
コード例 #4
0
ファイル: tests.py プロジェクト: NICTA/openboard
 def test_dump_widget_data(self):
     widget_data_sets = [
         ("national_leadership", 'test_exports/d_national_leadership.json',),
         ('race_rings', 'test_exports/d_race_rings.json',),
         ('rivers', 'test_exports/d_rivers.json',),
     ]
     for url, fn in widget_data_sets:
         fp = open(fn)
         file_dump = json.load(fp)
         raw_dump = export_widget_data(url)
         json_dump = jsonize(raw_dump)
         cooked_json = json.loads(json_dump)
         self.assertTrue(json_equal(file_dump, cooked_json, url, ignore_keys=[ "widget_last_updated", ]))
コード例 #5
0
 def handle(self, *args, **options):
     try:
         data = export_widget_data(options["url"])
     except ImportExportException, e:
         raise CommandError(unicode(e))