]> git.parisson.com Git - telemeta.git/commitdiff
Add boilerplate with simple test sounds
authorGuillaume Pellerin <yomguy@parisson.com>
Wed, 18 Mar 2015 22:37:07 +0000 (23:37 +0100)
committerGuillaume Pellerin <yomguy@parisson.com>
Wed, 18 Mar 2015 22:37:24 +0000 (23:37 +0100)
telemeta/management/commands/telemeta-test-boilerplate.py [new file with mode: 0644]

diff --git a/telemeta/management/commands/telemeta-test-boilerplate.py b/telemeta/management/commands/telemeta-test-boilerplate.py
new file mode 100644 (file)
index 0000000..c5e9559
--- /dev/null
@@ -0,0 +1,36 @@
+from optparse import make_option
+from django.conf import settings
+from django.core.management.base import BaseCommand, CommandError
+from django.contrib.auth.models import User
+from django.template.defaultfilters import slugify
+
+import os
+from telemeta.models import *
+from timeside.core.tools.test_samples import generateSamples
+
+
+class Command(BaseCommand):
+    help = "Setup and run a boilerplate for testing"
+
+    code = 'Tests'
+
+    def handle(self, *args, **options):
+        # NOT for production
+        # self.processor_cleanup()
+        # self.result_cleanup()
+
+        media_dir = 'items' + os.sep + 'tests'
+        samples_dir = settings.MEDIA_ROOT + media_dir
+        samples = generateSamples(samples_dir=samples_dir)
+
+        collection, c = MediaCollection.objects.get_or_create(title=self.code,
+                            code=self.code)
+
+        for sample in samples.iteritems():
+            filename, path = sample
+            title = os.path.splitext(filename)[0]
+            path = media_dir + os.sep + filename
+            item, c = MediaItem.objects.get_or_create(title=title,
+                                    code=self.code + '-' + slugify(filename),
+                                    file=path, collection=collection)
+