(formats)
| 374 | ], |
| 375 | ) |
| 376 | def test_graph_serialize_with_formats(formats): |
| 377 | num_graphs = 100 |
| 378 | g_list = [generate_rand_graph(30) for _ in range(num_graphs)] |
| 379 | |
| 380 | # create a temporary file and immediately release it so DGL can open it. |
| 381 | f = tempfile.NamedTemporaryFile(delete=False) |
| 382 | path = f.name |
| 383 | f.close() |
| 384 | |
| 385 | dgl.save_graphs(path, g_list, formats=formats) |
| 386 | |
| 387 | idx_list = np.random.permutation(np.arange(num_graphs)).tolist() |
| 388 | loadg_list, _ = dgl.load_graphs(path, idx_list) |
| 389 | |
| 390 | idx = idx_list[0] |
| 391 | load_g = loadg_list[0] |
| 392 | g_formats = load_g.formats() |
| 393 | |
| 394 | # verify formats |
| 395 | if not isinstance(formats, list): |
| 396 | formats = [formats] |
| 397 | for fmt in formats: |
| 398 | assert fmt in g_formats["created"] |
| 399 | |
| 400 | assert F.allclose(load_g.nodes(), g_list[idx].nodes()) |
| 401 | |
| 402 | load_edges = load_g.all_edges("uv", "eid") |
| 403 | g_edges = g_list[idx].all_edges("uv", "eid") |
| 404 | assert F.allclose(load_edges[0], g_edges[0]) |
| 405 | assert F.allclose(load_edges[1], g_edges[1]) |
| 406 | |
| 407 | os.unlink(path) |
| 408 | |
| 409 | |
| 410 | @unittest.skipIf(F._default_context_str == "gpu", reason="GPU not implemented") |
nothing calls this directly
no test coverage detected