def testLinkJobOutput2Data( self ):
     Transaction.create( self.sessionPath , False , True )
     transaction = Transaction( self.sessionPath , Transaction.WRITE )
     sendData = self.datas[0]
     transaction.createData( sendData[ 'dataName' ] ,
                             sendData[ 'userName' ] ,
                             sendData[ 'size' ] ,
                             sendData[ 'Type' ] ,
                             sendData[ 'dataBegin' ] ,
                             sendData[ 'inputModes' ] ,
                             producedBy = [] ,
                             usedBy = []
                             )
     sendJob = self.jobs[ 0 ]
     transaction.createJob( sendJob['jobID'] ,
                             sendJob['userName'] ,
                             sendJob['programName'] ,
                             sendJob['status'] ,
                             sendJob['date'] ,
                             [] ,
                             []
                             )
     transaction.commit()
     transaction = Transaction( self.sessionPath , Transaction.WRITE )
     transaction.linkJobOutput2Data( [ sendData[ 'dataName' ] ] , [ sendJob['jobID'] ])
     transaction.commit()
     transaction = Transaction( self.sessionPath , Transaction.READ )
     data = transaction.getData( sendData[ 'dataName' ] )
     job = transaction.getJob( sendJob['jobID'])
     transaction.commit()
     self.assertEqual( data[ 'producedBy' ][0] , sendJob[ 'jobID' ] )
     self.assertEqual( job[ 'dataProduced' ][0] , sendData[ 'dataName' ] )
 def testRenameData( self ):
     shutil.copy( self.xmlSourcePath , self.sessionPath)
     newUserName = '******'
     transaction = Transaction( self.sessionPath , Transaction.WRITE )
     transaction.renameData( self.dataID[0] , newUserName )
     transaction.commit()
     transaction = Transaction( self.sessionPath , Transaction.READ )
     data = transaction.getData( self.dataID[0] )
     transaction.commit()
     self.assertTrue( newUserName == data[ 'userName' ] )
 def testAddInputModes(self ):
     shutil.copy( self.xmlSourcePath , self.sessionPath )
     transaction = Transaction( self.sessionPath , Transaction.WRITE )
     transaction.addInputModes( self.dataID[0] , [ 'paste' , 'db' ] )
     transaction.commit()
     transaction = Transaction( self.sessionPath , Transaction.READ )
     data = transaction.getData( self.dataID[0] )
     transaction.commit()
     result = ['paste' , 'db' , 'result']
     result.sort()
     data[ 'inputModes' ].sort()
     self.assertEqual( data[ 'inputModes' ] , result )
     #an inputMode must not be twice in the xml
     transaction = Transaction( self.sessionPath , Transaction.WRITE )
     transaction.addInputModes( self.dataID[0] , [ 'paste' ] )
     transaction.commit()
     transaction = Transaction( self.sessionPath , Transaction.READ )
     data = transaction.getData( self.dataID[0] )
     transaction.commit()
     data[ 'inputModes' ].sort()
     self.assertEqual( data[ 'inputModes' ] , result )
 def testCreateAndGetData( self ):
     Transaction.create( self.sessionPath , True , True , activatingKey = 'uneJolieCle' , userEmail = self.email , passwd = self.passwd )
     transaction = Transaction( self.sessionPath , Transaction.WRITE )
     sendData = self.datas[0]
     transaction.createData( sendData[ 'dataName' ] ,
                             sendData[ 'userName' ] ,
                             sendData[ 'size' ] ,
                             sendData[ 'Type' ] ,
                             sendData[ 'dataBegin' ] ,
                             sendData[ 'inputModes' ] ,
                             producedBy = sendData[ 'producedBy' ] ,
                             usedBy = sendData[ 'usedBy' ]
                             )
     transaction.commit()
     transaction = Transaction( self.sessionPath , Transaction.READ )
     receivedData = transaction.getData( sendData[ 'dataName' ] )
     transaction.commit()
     self.assertTrue( receivedData == sendData )