cubicweb/web/test/data/cubicweb_file/schema.py
changeset 12519 aff5d3498f68
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cubicweb/web/test/data/cubicweb_file/schema.py	Tue Mar 19 13:17:47 2019 +0100
@@ -0,0 +1,27 @@
+from yams.buildobjs import EntityType, String, Bytes, RichString
+
+
+class File(EntityType):
+    """a downloadable file which may contains binary data"""
+    title = String(fulltextindexed=True, maxsize=256)
+    data = Bytes(required=True, description='file to upload')
+    data_format = String(
+        required=True, maxsize=128,
+        description=('MIME type of the file. Should be dynamically set '
+                     'at upload time.'))
+    data_encoding = String(
+        maxsize=32,
+        description=('encoding of the file when it applies (e.g. text). '
+                     'Should be dynamically set at upload time.'))
+    data_name = String(
+        required=True, fulltextindexed=True,
+        description=('name of the file. Should be dynamically set '
+                     'at upload time.'))
+    data_hash = String(
+        maxsize=256,  # max len of currently available hash alg + prefix is 140
+        description=('hash of the file. May be set at upload time.'),
+        __permissions__={'read': ('managers', 'users', 'guests'),
+                         'add': (),
+                         'update': ()})
+    description = RichString(fulltextindexed=True, internationalizable=True,
+                             default_format='text/rest')