@@ -4,6 +4,7 @@ describe('Content API', function() {
44 'use strict' ;
55
66 var REST_REQUESTS_TIMEOUT = 3000 ;
7+ var UPLOAD_TIMEOUT = 6000 ;
78
89 var isNodeEnv = typeof window === 'undefined' && typeof exports === 'object' ;
910 var QB = isNodeEnv ? require ( '../js/qbMain' ) : window . QB ;
@@ -32,36 +33,51 @@ describe('Content API', function() {
3233 } , REST_REQUESTS_TIMEOUT ) ;
3334
3435 it ( 'can create and upload files' , function ( done ) {
35- if ( isNodeEnv ) {
36- pending ( 'Working on fix "new File" in Node env.' ) ;
37- }
3836
39- var d = new Date ( 2015 , 10 , 13 , 14 , 30 , 30 , 600 ) ,
40- genFile = new File ( [ 'Hello QuickBlox' ] , 'QB.txt' , { type : 'text/plain' , lastModified : d } ) ;
37+ function upload ( data ) {
38+ QB . content . createAndUpload ( data , function ( err , res ) {
39+ if ( err ) {
40+ done . fail ( 'Create and upload files error: ' + JSON . stringify ( err ) ) ;
41+ } else {
42+ fileId = res . id ;
4143
42- data = { name : genFile . name , file : genFile , type : genFile . type , size : genFile . size , public : false } ;
44+ expect ( res ) . not . toBeNull ( ) ;
45+ expect ( res . name ) . toBe ( isNodeEnv ? "logo.png" : 'QB.txt' ) ;
4346
44- QB . content . createAndUpload ( data , function ( err , res ) {
45- if ( err ) {
46- done . fail ( 'Create and upload files error: ' + JSON . stringify ( err ) ) ;
47- } else {
48- fileId = res . id ;
47+ done ( ) ;
48+ }
49+ } ) ;
50+ }
4951
50- expect ( res ) . not . toBeNull ( ) ;
51- expect ( res . name ) . toBe ( 'QB.txt ') ;
52+ if ( isNodeEnv ) {
53+ var fs = require ( 'fs ') ;
5254
53- done ( ) ;
54- }
55- } ) ;
56- } , REST_REQUESTS_TIMEOUT ) ;
55+ var imgName = "logo.png" ;
56+ var srcIMG = 'spec/' + imgName ;
57+ fs . stat ( srcIMG , function ( err , stats ) {
58+ fs . readFile ( srcIMG , function ( err , data ) {
59+ if ( err ) throw err ;
60+ var data = { name : imgName , file : data , type : "image/png" , size : data . length , public : false } ;
61+ upload ( data ) ;
62+ } ) ;
63+ } ) ;
64+
65+ } else {
66+ var d = new Date ( 2015 , 10 , 13 , 14 , 30 , 30 , 600 ) ;
67+ var genFile = new File ( [ 'Hello QuickBlox' ] , 'QB.txt' , { type : 'text/plain' , lastModified : d } ) ;
68+ var data = { name : genFile . name , file : genFile , type : genFile . type , size : genFile . size , public : false } ;
69+ upload ( data ) ;
70+ }
71+
72+ } , UPLOAD_TIMEOUT ) ;
5773
5874 it ( 'can get file information by ID' , function ( done ) {
5975 QB . content . getInfo ( fileId , function ( err , res ) {
6076 if ( err ) {
6177 done . fail ( "Get file information by ID error: " + JSON . stringify ( err ) ) ;
6278 } else {
6379 expect ( res ) . not . toBeNull ( ) ;
64- expect ( res . blob . id ) . toEqual ( self . fileId ) ;
80+ expect ( res . blob . id ) . toEqual ( fileId ) ;
6581
6682 done ( ) ;
6783 }
@@ -82,28 +98,16 @@ describe('Content API', function() {
8298 } , REST_REQUESTS_TIMEOUT ) ;
8399
84100 it ( 'can delete content objects' , function ( done ) {
85- if ( isNodeEnv ) {
86- pending ( 'Working on fix "new File" in Node env.' ) ;
87- }
88-
89- QB . content . createAndUpload ( data , function ( err , response ) {
101+ QB . content . delete ( fileId , function ( err , result ) {
90102 if ( err ) {
91- done . fail ( 'Create and upload files error: ' + JSON . stringify ( err ) ) ;
103+ done . fail ( 'Delete content objects error: ' + JSON . stringify ( err ) ) ;
92104 } else {
93- var elemId = response . id ;
105+ expect ( result ) . toEqual ( true ) ;
94106
95- QB . content . delete ( elemId , function ( err , result ) {
96- if ( err ) {
97- done . fail ( 'Delete content objects error: ' + JSON . stringify ( err ) ) ;
98- } else {
99- expect ( result ) . toEqual ( true ) ;
100-
101- done ( ) ;
102- }
103- } ) ;
107+ done ( ) ;
104108 }
105109 } ) ;
106- } , 7000 ) ;
110+ } , REST_REQUESTS_TIMEOUT ) ;
107111
108112 it ( 'can access public URL' , function ( ) {
109113 var publicUrl = QB . content . publicUrl ( fileUID ) ;
0 commit comments