Direkt zum Inhalt | Direkt zur Navigation

Benutzerspezifische Werkzeuge

Sie sind hier: Startseite / Tech-Blog / Plone: ContentType mit NamedBlobFile in tests erzeugen

Plone: ContentType mit NamedBlobFile in tests erzeugen

Im folgenden wird beschrieben, wie man einen ContentType mit einen NamedBlobFile field, in einem Unitest erzeugen kann.

Wir benötigen dazu eine Datei z.B. eine PDF-Datei, die wir programmatisch in unseren ContentType einsetzen können. Diese legen wir einfach in unserem tests-Verzeichniss, parallel zu unserem test ab.

Der folgende Code liest die Datei file.pdf ein und fügt sie in das Feld file des Objektes MyContentTypeObj

def getTestFile(filename):
    """ return contents of the file with the given name """
    filename = os.path.join(os.path.dirname(__file__), filename)
    return open(filename, 'r')

self.portal.invokeFactory(
    "MyContentType",
    id="mycontenttypeobj",
    title="My Content Type Obj",
)
MyContentTypeObj = self.portal.get('mycontenttypeobj')

data = getTestFile('file.pdf').read()
MyContentTypeObj.file = NamedBlobFile(
    data=data,
    contentType='',
    filename=u'file.pdf')
abgelegt unter: ,