Skip to content

Commit 9e8315d

Browse files
author
Steve Canny
committed
add CT_Override.new()
1 parent 791e48e commit 9e8315d

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

opc/oxml.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,19 @@ def content_type(self):
114114
"""
115115
return self.get('ContentType')
116116

117+
@staticmethod
118+
def new(partname, content_type):
119+
"""
120+
Return a new ``<Override>`` element with attributes set to parameter
121+
values.
122+
"""
123+
xml = '<Override xmlns="%s"/>' % nsmap['ct']
124+
override = oxml_fromstring(xml)
125+
override.set('PartName', partname)
126+
override.set('ContentType', content_type)
127+
objectify.deannotate(override, cleanup_namespaces=True)
128+
return override
129+
117130
@property
118131
def partname(self):
119132
"""

tests/test_oxml.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,11 @@ def it_provides_read_access_to_xml_values(self):
3535
assert override.partname == '/part/name.xml'
3636
assert override.content_type == 'app/vnd.type'
3737

38+
def it_can_construct_a_new_override_element(self):
39+
override = CT_Override.new('/part/name.xml', 'app/vnd.type')
40+
expected_xml = an_Override().xml
41+
assert override.xml == expected_xml
42+
3843

3944
class DescribeCT_Relationship(object):
4045

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy