Skip to content

Commit 2862897

Browse files
author
Steve Canny
committed
reorg: rename _Document to DocumentPart
1 parent 2853e3d commit 2862897

File tree

4 files changed

+25
-23
lines changed

4 files changed

+25
-23
lines changed

docx/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010
from docx.opc.constants import CONTENT_TYPE as CT
1111
from docx.opc.package import PartFactory
1212

13-
from docx.parts.document import _Document
13+
from docx.parts.document import DocumentPart
1414

15-
PartFactory.part_type_for[CT.WML_DOCUMENT_MAIN] = _Document
15+
PartFactory.part_type_for[CT.WML_DOCUMENT_MAIN] = DocumentPart
1616

17-
del CT, _Document, PartFactory
17+
del CT, DocumentPart, PartFactory

docx/parts/document.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,12 @@
1515
from docx.text import Paragraph
1616

1717

18-
class _Document(Part):
18+
class DocumentPart(Part):
1919
"""
2020
Main document part of a WordprocessingML (WML) package, aka a .docx file.
2121
"""
2222
def __init__(self, partname, content_type, document_elm, package):
23-
super(_Document, self).__init__(
23+
super(DocumentPart, self).__init__(
2424
partname, content_type, package=package
2525
)
2626
self._element = document_elm
@@ -57,10 +57,10 @@ def inline_shapes(self):
5757
"""
5858
return InlineShapes(self._element.body, self)
5959

60-
@staticmethod
61-
def load(partname, content_type, blob, package):
60+
@classmethod
61+
def load(cls, partname, content_type, blob, package):
6262
document_elm = oxml_fromstring(blob)
63-
document = _Document(partname, content_type, document_elm, package)
63+
document = cls(partname, content_type, document_elm, package)
6464
return document
6565

6666
@property

tests/parts/test_document.py

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
from docx.oxml.shared import nsmap
1717
from docx.oxml.text import CT_R
1818
from docx.package import ImageParts, Package
19-
from docx.parts.document import _Body, _Document, InlineShape, InlineShapes
19+
from docx.parts.document import (
20+
_Body, DocumentPart, InlineShape, InlineShapes
21+
)
2022
from docx.parts.image import ImagePart
2123
from docx.table import Table
2224
from docx.text import Paragraph
@@ -49,13 +51,13 @@ def it_can_be_constructed_by_opc_part_factory(
4951
)
5052
oxml_fromstring_.return_value = document_elm
5153
# exercise ---------------------
52-
doc = _Document.load(partname, content_type, blob, package)
54+
doc = DocumentPart.load(partname, content_type, blob, package)
5355
# verify -----------------------
5456
oxml_fromstring_.assert_called_once_with(blob)
5557
init.assert_called_once_with(
5658
partname, content_type, document_elm, package
5759
)
58-
assert isinstance(doc, _Document)
60+
assert isinstance(doc, DocumentPart)
5961

6062
def it_can_add_an_image_part_to_the_document(
6163
self, get_or_add_image_fixture):
@@ -99,12 +101,12 @@ def it_knows_the_next_available_xml_id(self, next_id_fixture):
99101

100102
@pytest.fixture
101103
def document(self):
102-
return _Document(None, None, None, None)
104+
return DocumentPart(None, None, None, None)
103105

104106
@pytest.fixture
105107
def document_blob_fixture(self, request, serialize_part_xml_):
106108
document_elm = instance_mock(request, CT_Document)
107-
document = _Document(None, None, document_elm, None)
109+
document = DocumentPart(None, None, document_elm, None)
108110
return document, document_elm, serialize_part_xml_
109111

110112
@pytest.fixture
@@ -114,7 +116,7 @@ def document_body_fixture(self, request, _Body_):
114116
a_body())
115117
).element
116118
body_elm = document_elm[0]
117-
document = _Document(None, None, document_elm, None)
119+
document = DocumentPart(None, None, document_elm, None)
118120
return document, _Body_, body_elm
119121

120122
@pytest.fixture
@@ -125,7 +127,7 @@ def _Body_(self, request):
125127
def get_or_add_image_fixture(
126128
self, request, package_, image_descriptor_, image_parts_,
127129
relate_to_, image_part_, rId_):
128-
document = _Document(None, None, None, package_)
130+
document = DocumentPart(None, None, None, package_)
129131
return (
130132
document, image_descriptor_, image_parts_, relate_to_,
131133
image_part_, rId_
@@ -147,7 +149,7 @@ def image_parts_(self, request, image_part_):
147149

148150
@pytest.fixture
149151
def init(self, request):
150-
return initializer_mock(request, _Document)
152+
return initializer_mock(request, DocumentPart)
151153

152154
@pytest.fixture
153155
def InlineShapes_(self, request):
@@ -160,7 +162,7 @@ def inline_shapes_fixture(self, request, InlineShapes_):
160162
a_body())
161163
).element
162164
body_elm = document_elm[0]
163-
document = _Document(None, None, document_elm, None)
165+
document = DocumentPart(None, None, document_elm, None)
164166
return document, InlineShapes_, body_elm
165167

166168
@pytest.fixture(params=[
@@ -174,7 +176,7 @@ def next_id_fixture(self, request):
174176
p = a_p().with_nsdecls().element
175177
p.set('id', str(n))
176178
document_elm.append(p)
177-
document = _Document(None, None, document_elm, None)
179+
document = DocumentPart(None, None, document_elm, None)
178180
return document, expected_id
179181

180182
@pytest.fixture
@@ -189,7 +191,7 @@ def package_(self, request, image_parts_):
189191

190192
@pytest.fixture
191193
def relate_to_(self, request, rId_):
192-
relate_to_ = method_mock(request, _Document, 'relate_to')
194+
relate_to_ = method_mock(request, DocumentPart, 'relate_to')
193195
relate_to_.return_value = rId_
194196
return relate_to_
195197

@@ -552,7 +554,7 @@ def body_(self, request, r_):
552554

553555
@pytest.fixture
554556
def document_(self, request, rId_, image_part_, shape_id_):
555-
document_ = instance_mock(request, _Document, name='document_')
557+
document_ = instance_mock(request, DocumentPart, name='document_')
556558
document_.get_or_add_image_part.return_value = image_part_, rId_
557559
document_.next_id = shape_id_
558560
return document_

tests/test_api.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
from docx.api import Document, _Document
1010
from docx.opc.constants import CONTENT_TYPE as CT
1111
from docx.package import Package
12-
from docx.parts.document import _Document as parts_Document, InlineShapes
12+
from docx.parts.document import DocumentPart, InlineShapes
1313

1414
from .unitutil import class_mock, instance_mock, var_mock
1515

@@ -45,7 +45,7 @@ def default_docx_(self, request):
4545
@pytest.fixture
4646
def document_part_(self, request):
4747
return instance_mock(
48-
request, parts_Document, content_type=CT.WML_DOCUMENT_MAIN
48+
request, DocumentPart, content_type=CT.WML_DOCUMENT_MAIN
4949
)
5050

5151
@pytest.fixture
@@ -113,7 +113,7 @@ def document(self, request, package_, document_part_):
113113

114114
@pytest.fixture
115115
def document_part_(self, request):
116-
return instance_mock(request, parts_Document)
116+
return instance_mock(request, DocumentPart)
117117

118118
@pytest.fixture
119119
def package_(self, request):

0 commit comments

Comments
 (0)