MCPcopy
hub / github.com/django/django / _dumpdata_assert

Method _dumpdata_assert

tests/fixtures/tests.py:77–132  ·  view source on GitHub ↗
(
        self,
        args,
        output,
        format="json",
        filename=None,
        natural_foreign_keys=False,
        natural_primary_keys=False,
        use_base_manager=False,
        exclude_list=[],
        primary_keys="",
    )

Source from the content-addressed store, hash-verified

75
76class DumpDataAssertMixin:
77 def _dumpdata_assert(
78 self,
79 args,
80 output,
81 format="json",
82 filename=None,
83 natural_foreign_keys=False,
84 natural_primary_keys=False,
85 use_base_manager=False,
86 exclude_list=[],
87 primary_keys="",
88 ):
89 new_io = StringIO()
90 filename = filename and os.path.join(tempfile.gettempdir(), filename)
91 management.call_command(
92 "dumpdata",
93 *args,
94 format=format,
95 stdout=new_io,
96 stderr=new_io,
97 output=filename,
98 use_natural_foreign_keys=natural_foreign_keys,
99 use_natural_primary_keys=natural_primary_keys,
100 use_base_manager=use_base_manager,
101 exclude=exclude_list,
102 primary_keys=primary_keys,
103 )
104 if filename:
105 file_root, file_ext = os.path.splitext(filename)
106 compression_formats = {
107 ".bz2": (open, file_root),
108 ".gz": (gzip.open, filename),
109 ".lzma": (open, file_root),
110 ".xz": (open, file_root),
111 ".zip": (open, file_root),
112 }
113 if HAS_BZ2:
114 compression_formats[".bz2"] = (bz2.open, filename)
115 if HAS_LZMA:
116 compression_formats[".lzma"] = (lzma.open, filename)
117 compression_formats[".xz"] = (lzma.open, filename)
118 try:
119 open_method, file_path = compression_formats[file_ext]
120 except KeyError:
121 open_method, file_path = open, filename
122 with open_method(file_path, "rt") as f:
123 command_output = f.read()
124 os.remove(file_path)
125 else:
126 command_output = new_io.getvalue().strip()
127 if format == "json":
128 self.assertJSONEqual(command_output, output)
129 elif format == "xml":
130 self.assertXMLEqual(command_output, output)
131 else:
132 self.assertEqual(command_output, output)
133
134

Calls 7

splitextMethod · 0.80
assertJSONEqualMethod · 0.80
assertXMLEqualMethod · 0.80
joinMethod · 0.45
readMethod · 0.45
removeMethod · 0.45
getvalueMethod · 0.45

Tested by

no test coverage detected