diff -r 232d40ae99d0 -r 380d3657bc28 src/ldt/ldt/ldt_utils/tests/content_tests.py
--- a/src/ldt/ldt/ldt_utils/tests/content_tests.py Fri Nov 30 16:26:23 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/tests/content_tests.py Fri Nov 30 16:40:26 2012 +0100
@@ -16,6 +16,8 @@
import unittest
import uuid
import logging
+import os
+import exceptions
class ContentTest(TestCase):
@@ -29,7 +31,7 @@
self.user = User()
self.user.username = 'blop'
-
+
#test the creation of a content without media
def test_create_content_v1(self):
self.cont12 = Content(iriurl="id12/iriurl12", duration = 100)
@@ -46,8 +48,54 @@
self.cont13.iri_id = "id113"
self.cont13.save()
- self.assertEqual(Content.objects.get(iri_id=self.cont13.iri_id), self.cont13)
-
+ self.assertEqual(Content.objects.get(iri_id=self.cont13.iri_id), self.cont13)
+
+ #test the creation of content without reading permission
+ def test_create_content_v3(self):
+ import sys
+ ldt_dir = os.path.join(settings.MEDIA_ROOT, "ldt")
+ if sys.platform == 'win32':
+ logging.debug("windows 3")
+ else:
+ logging.debug("linux")
+ os.chmod(ldt_dir, 0577)
+
+ self.cont17 = Content(iriurl="id17/iriurl17", duration = 100)
+ self.cont17.iri_id = 'id117'
+ with self.assertRaises(WindowsError):
+ self.cont17.save()
+ with self.assertRaises(Content.DoesNotExist):
+ Content.objects.get(iri_id=self.cont17.iri_id)
+
+ if sys.platform == 'win32':
+ logging.debug("windows 4")
+ else:
+ logging.debug("linux")
+ os.chmod(ldt_dir, 0700)
+
+ #test the creation of content without reading permission
+ def test_create_content_v4(self):
+ import sys
+ ldt_dir = os.path.join(settings.MEDIA_ROOT, "ldt")
+ if sys.platform == 'win32':
+ logging.debug("windows 3")
+ else:
+ logging.debug("linux")
+ os.chmod(ldt_dir, 0377)
+
+ self.cont18 = Content(iriurl="id18/iriurl18", duration = 100)
+ self.cont18.iri_id = 'id118'
+ with self.assertRaises(WindowsError):
+ self.cont18.save()
+ with self.assertRaises(Content.DoesNotExist):
+ Content.objects.get(iri_id=self.cont18.iri_id)
+
+ if sys.platform == 'win32':
+ logging.debug("windows 4")
+ else:
+ logging.debug("linux")
+ os.chmod(ldt_dir, 0700)
+
#test the deletion of a content without media
def test_del_content_v1(self):
self.cont14 = Content(iriurl="id14/iriurl14", duration = 100)
diff -r 232d40ae99d0 -r 380d3657bc28 src/ldt/ldt/ldt_utils/tests/ldt_tests.py
--- a/src/ldt/ldt/ldt_utils/tests/ldt_tests.py Fri Nov 30 16:26:23 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/tests/ldt_tests.py Fri Nov 30 16:40:26 2012 +0100
@@ -68,7 +68,6 @@
self.assertEqual(ldoc.xpath("/iri/medias/media")[1].get("id"), self.cont2.iri_id)
f.close()
- """
def test_generate_init(self):
self.cont3 = Content(iriurl="id3/iriurl3", duration=111)
self.cont3.iri_id = "id3"
@@ -82,7 +81,6 @@
ldoc = self.LU.generate_init([], 'ldt.ldt_utils.views.search_ldt')
self.assertEqual(ldoc.xpath("/iri/files/init")[0].tag, "init")
self.assertEqual(ldoc.xpath("/iri/files/library")[0].tag, "library")
- """
def test_create_ldt(self):
self.cont5 = Content(iriurl="id5/iriurl5", duration=111)
diff -r 232d40ae99d0 -r 380d3657bc28 src/ldt/ldt/ldt_utils/tests/project_tests.py
--- a/src/ldt/ldt/ldt_utils/tests/project_tests.py Fri Nov 30 16:26:23 2012 +0100
+++ b/src/ldt/ldt/ldt_utils/tests/project_tests.py Fri Nov 30 16:40:26 2012 +0100
@@ -52,4 +52,26 @@
with self.assertRaises(Project.DoesNotExist):
Project.objects.get(ldt_id=self.project3.ldt_id)
-
\ No newline at end of file
+
+ #test deletion of project with annotations
+ def test_del_project_v2(self):
+
+ self.project4 = Project(title="titleproj3", owner=self.user)
+ self.project4.ldt = '
CA: prof et admin conseil de classe Reprise de la figure precedente TC: prof et admin Conseil de classe Argumentation conseil de classe Reprise de la figure precedente Bout a bout 1 '
+ self.project4.id = "444"
+ self.project4.ldt_id = str(uuid.uuid1())
+ self.project4.description = "proj4description"
+ self.project4.save()
+
+ create_ldt(self.project4, self.user)
+
+ self.LA = LdtAnnotation(self.project4)
+
+ self.LA.add("id11", "cutting_id", "cutting_title", "title", "text", ["tag1", "tag2"], "800",
+ "10000", "jdoe", "2011-09-10T09:12:58")
+ self.LA.save()
+
+ self.project4.delete()
+
+ with self.assertRaises(Project.DoesNotExist):
+ Project.objects.get(ldt_id=self.project4.ldt_id)
\ No newline at end of file
diff -r 232d40ae99d0 -r 380d3657bc28 src/ldt/ldt/ldt_utils/views/content.py
diff -r 232d40ae99d0 -r 380d3657bc28 src/ldt/ldt/static/ldt/js/projectscontents.js
--- a/src/ldt/ldt/static/ldt/js/projectscontents.js Fri Nov 30 16:26:23 2012 +0100
+++ b/src/ldt/ldt/static/ldt/js/projectscontents.js Fri Nov 30 16:40:26 2012 +0100
@@ -460,81 +460,6 @@
$("#upload_progress_bar").css({ width:"90%", height:"10" });
$('#media_fields_div').height(80);
-
- // We init the swfupload object
- swfupload = new SWFUpload({
- debug: false,
-
- upload_url: url_upload,
- flash_url: media_prefix+"swf/swfupload.swf",
-
- post_params: post_added_params,
-
- button_placeholder_id: "upload_btn",
- button_width: "60",
- button_height: "16",
- button_cursor: SWFUpload.CURSOR.HAND,
- button_text : '
' + btn_label + ' ',
- button_text_style : ".btnText { font-size: 12; font-family: Arial; }",
-
- file_types : "*.flv;*.f4v;*.mp4;*.mov;*.mp3",
- file_types_description : "Media Files (flv, f4v, mov H264, mp4, mp3)",
- file_upload_limit : "1",
- file_queue_limit : "1",
-
- upload_error_handler : uploadError,
- upload_start_handler : function(file) {
- try {
- if($('#upload_progress_info').children().size()>0){
- $('#progress_info').remove();
- }
- $('#upload_progress_info').append('
' + cancel_label + '.
');
- }
- catch (ex) {
- //this.debug(ex);
- }
- },
- upload_progress_handler : uploadProgress,
- upload_success_handler : function() {
- try {
- if($('#upload_progress_info').children().size()>0){
- $('#progress_info').remove();
- }
- $('#upload_progress_info').append('
' + success_label + '.
');
- $("#upload_progress_bar > div").css({ 'background': '#90ffa8' });
- window.upload_from_local_done = true;
- // Now that the file is uploaded, we submit the form if asked
- if(window.submit_asked==true){
- $('#my_form').submit();
- }
- else{
- // We ask the uploaded media's duration
- if(window.ask_duration_url){
- $.ajax({
- type: "GET",
- url: window.ask_duration_url,
- data: "filename="+ $('#id_media-local_file_name').val(),
- cache: false,
- success: function(data, status, request){
- if(data && data!=""){
- $('#id_content-duration').val(data);
- }
- }
- });
- }
- }
- }
- catch (ex) {
- //this.debug(ex);
- }
- },
- file_queued_handler : displayUploadPath,
- file_dialog_complete_handler: function() {
- window.submit_asked = false;
- this.startUpload();
- }
- //upload_complete_handler: function() { this.startUpload(); },
- });
}
function displayUploadPath(file) {
try {
@@ -544,62 +469,6 @@
//this.debug(ex);
}
}
-function startLocalUpload(){
- swfupload.startUpload();
-}
-function uploadProgress(file, bytesLoaded, bytesTotal) {
- try {
- var percent = Math.ceil((bytesLoaded / bytesTotal) * 100);
- $("#upload_progress_bar").progressbar({ value: percent });
- }
- catch (ex) {
- //this.debug(ex);
- }
-}
-function cancelSwfUpload(){
- swfupload.cancelUpload();
- if($('#media_field_upload').has($('#cancelupload')).length==0){
- $('#cancelupload').remove();
- }
-}
-function uploadError(file, errorCode, message) {
- try {
- if($('#upload_progress_info').children().size()>0){
- $('#progress_info').remove();
- }
- switch (errorCode) {
- case SWFUpload.UPLOAD_ERROR.HTTP_ERROR:
- $('#upload_progress_info').append('
' + "Error Code: HTTP Error, File name: " + file.name + ", Message: " + message + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.UPLOAD_FAILED:
- $('#upload_progress_info').append('
' + "Error Code: Upload Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.IO_ERROR:
- $('#upload_progress_info').append('
' + "Error Code: IO Error, File name: " + file.name + ", Message: " + message + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.SECURITY_ERROR:
- $('#upload_progress_info').append('
' + "Error Code: Security Error, File name: " + file.name + ", Message: " + message + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.UPLOAD_LIMIT_EXCEEDED:
- $('#upload_progress_info').append('
' + "Error Code: Upload Limit Exceeded, File name: " + file.name + ", File size: " + file.size + ", Message: " + message + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.FILE_VALIDATION_FAILED:
- $('#upload_progress_info').append('
' + "Error Code: File Validation Failed, File name: " + file.name + ", File size: " + file.size + ", Message: " + message + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.FILE_CANCELLED:
- $('#upload_progress_info').append('
' + "Error Code: FILE_CANCELLED" + '
');
- break;
- case SWFUpload.UPLOAD_ERROR.UPLOAD_STOPPED:
- $('#upload_progress_info').append('
' + "STOPPED" + '
');
- break;
- default:
- $('#upload_progress_info').append('
' + "unhandled error: File name: " + file.name + ", File size: " + file.size + ", Message: " + message + '
');
- break;
- }
- } catch (ex) {
- //this.debug(ex);
- }
-}
// Test the value of the URL from the form to load a picture in case it is a youtube video
function testUrlValue(e){