Example #1
0
    def testLoader(self):
        shexj = """{
          "type": "Schema",
          "shapes":{
            "http://a.example/S1": {
              "type": "Shape",
              "expression": {
                "type": "TripleConstraint",
                "predicate": "http://a.example/p1",
                "valueExpr": { "type": "NodeConstraint", "datatype": "http://a.example/dt1" }
              }
            }
          }
        }"""
        s = loads(shexj, ShExJ)
        self.assertTrue(s._is_valid())
        self.assertTrue(
            dict_compare(
                jao_loads("""{
   "type": "Schema",
   "shapes": {
      "http://a.example/S1": {
         "type": "Shape",
         "expression": {
            "type": "TripleConstraint",
            "predicate": "http://a.example/p1",
            "valueExpr": {
               "type": "NodeConstraint",
               "datatype": "http://a.example/dt1"
            }
         }
      }
   }
}""")._as_dict, s._as_dict))
Example #2
0
 def test_extra_info(self):
     extra_info = {"data":["arbitrary data, possibly version information"]}
     self.graph.set_extra_info(extra_info)
     helpers.export_temporary_test_graph(self.graph)
     temporary_graph = helpers.load_temporary_test_graph()
     helpers.cleanup_temporary_test_graph()
     round_trip_extra_info = temporary_graph.get_extra_info()
     self.assertTrue(dict_compare(round_trip_extra_info, extra_info, reporter=self.fail))
Example #3
0
 def test_get_full_filenames(self):
     expected = [
             "provides_strlen_needs_memcmp.o",
             "provides_malloc_needs_memcmp.o",
             "provides_free_needs_memcmp.o",
             "provides_memcmp.o",
             ]
     self.assertTrue(dict_compare(expected, expand_file_names(self.graph, "memcmp.o"), reporter=self.fail))
Example #4
0
 def test_get_full_symbol_names(self):
     expected = [
         "strlen",
         "strcpy",
     ]
     self.assertTrue(
         dict_compare(expected,
                      expand_symbol_names(self.graph, "str"),
                      reporter=self.fail))
Example #5
0
 def test_extra_info(self):
     extra_info = {"data": ["arbitrary data, possibly version information"]}
     self.graph.set_extra_info(extra_info)
     helpers.export_temporary_test_graph(self.graph)
     temporary_graph = helpers.load_temporary_test_graph()
     helpers.cleanup_temporary_test_graph()
     round_trip_extra_info = temporary_graph.get_extra_info()
     self.assertTrue(
         dict_compare(round_trip_extra_info, extra_info,
                      reporter=self.fail))
Example #6
0
 def compare_jsons(self, json1, json2):
     json1d = json.loads(json1)
     try:
         json2d = json.loads(json2)
     except json.JSONDecodeError as e:
         print(str(e))
         return False
     success, txt = dict_compare(json1d, json2d)
     if not success:
         print(txt)
     return success
Example #7
0
 def test_get_full_filenames(self):
     expected = [
         "provides_strlen_needs_memcmp.o",
         "provides_malloc_needs_memcmp.o",
         "provides_free_needs_memcmp.o",
         "provides_memcmp.o",
     ]
     self.assertTrue(
         dict_compare(expected,
                      expand_file_names(self.graph, "memcmp.o"),
                      reporter=self.fail))
Example #8
0
 def compare_jsons(self, json1, json2):
     json1d = json.loads(json1)
     try:
         json2d = json.loads(json2)
     except json.JSONDecodeError as e:
         print(str(e))
         return False
     success, txt = dict_compare(json1d, json2d)
     if not success:
         print(txt)
     return success
Example #9
0
 def get_profile(person):
     profile = {}
     profile['data'] = app.get_profile(person['id'], selectors = basic_fields)
     query = r.table('people_overtime').filter({'id': person['id']}).order_by('instant')
     old_profile = query[0].run(conn)['data'] if query.count().run(conn) > 0 else {} 
     if dict_compare(profile['data'], old_profile): 
         return None
     else:
         profile['instant'] = now_inst
         profile['id'] = person['id']
         profile['id_instant'] = profile['id'] + '^' + profile['instant']
         return profile
Example #10
0
 def test_interface(self):
     # wil.py --data test/data interface libmemory.a
     expected = [
             {
                 "used_by": [
                     "provides_strcpy_needs_memcmp_malloc_free.o"
                     ],
                 "object": "provides_malloc_needs_memcmp.o",
                 "archive": "libmemory.a",
                 "symbol": "malloc"
                 },
             {
                 "used_by": [
                     "provides_strcpy_needs_memcmp_malloc_free.o"
                     ],
                 "object": "provides_free_needs_memcmp.o",
                 "archive": "libmemory.a",
                 "symbol": "free"
                 }
             ]
     self.assertTrue(dict_compare(expected, find_interface(self.graph, "libmemory.a"), reporter=self.fail))
Example #11
0
 def test_leaks(self):
     # wil.py --data test/data tree --leak provides_strcpy_needs_memcmp_malloc_free.o --source_names provides_free_needs_memcmp.o
     expected = [{
         "sources": {
             "libutil.a": {
                 "provides_memcmp.o": {}
             }
         },
         "symbol": "memcmp",
         "object": "provides_strcpy_needs_memcmp_malloc_free.o"
     }, {
         "sources": {
             "libmemory.a": {
                 "provides_malloc_needs_memcmp.o": {}
             }
         },
         "symbol": "malloc",
         "object": "provides_strcpy_needs_memcmp_malloc_free.o"
     }]
     result = resolve_leak_info(
         self.graph, "provides_strcpy_needs_memcmp_malloc_free.o", 2, True,
         "provides_free_needs_memcmp.o")
     self.assertTrue(dict_compare(expected, result, reporter=self.fail))
Example #12
0
 def test_leaks(self):
     # wil.py --data test/data tree --leak provides_strcpy_needs_memcmp_malloc_free.o --source_names provides_free_needs_memcmp.o
     expected = [
             {
                 "sources": {
                     "libutil.a": {
                         "provides_memcmp.o": {}
                         }
                     },
                 "symbol": "memcmp",
                 "object": "provides_strcpy_needs_memcmp_malloc_free.o"
                 },
             {
                 "sources": {
                     "libmemory.a": {
                         "provides_malloc_needs_memcmp.o": {}
                         }
                     },
                 "symbol": "malloc",
                 "object": "provides_strcpy_needs_memcmp_malloc_free.o"
                 }
             ]
     result = resolve_leak_info(self.graph, "provides_strcpy_needs_memcmp_malloc_free.o", 2, True, "provides_free_needs_memcmp.o")
     self.assertTrue(dict_compare(expected, result, reporter=self.fail))
Example #13
0
 def test_get_full_symbol_names(self):
     expected = [
             "strlen",
             "strcpy",
             ]
     self.assertTrue(dict_compare(expected, expand_symbol_names(self.graph, "str"), reporter=self.fail))
 def test_biocaddie_json(self):
     raw_json = jsonasobj.loads(open(data_dir('phs001007.json')).read())
     s = biocaddie_json(StudyIdentifier(3900, 1, 1),
                        raw_json,
                        ['pht003897.v1', 'pht003898.v1', 'pht003899.v1', 'pht003900.v1'])._as_dict
     self.assertTrue(dict_compare(jsonasobj.loads(open(data_dir('phs001007.biocaddie.json')).read())._as_dict, s))
 def test(self):
     self.assertTrue(
         dict_compare({'studyid': 'phs00001', 'versionedid': 'phs00001.v1', 'fullid': 'phs00001.v1.p1'},
                      StudyIdentifier(1, 1, 1).identifiers))
Example #16
0
 def check_json(self, t: JSGObject, c: str):
     self.assertTrue(dict_compare(json_loads(c)._as_dict, t._as_json_obj()))