def test_list_output(self):
     ''' Test list output '''
     listOut = iohandle.handleout([])
     listOut.add(self.data1)
     listOut.add(self.data2)
     listOut.add(self.data3)
     self.assertEqual(
         listOut.close(),
         self.datalist
     )
 def test_pipe_output(self):
     ''' Test pipe output '''
     pipeRecv, pipeSend = multiprocessing.Pipe(False)
     pipeOut = iohandle.handleout(pipeSend)
     pipeOut.add(self.data1)
     pipeOut.add(self.data2)
     pipeOut.add(self.data3)
     self.assertEqual(
         [pipeRecv.recv(),pipeRecv.recv(),pipeRecv.recv()],
         self.datalist
     )
 def test_file_output(self):
     ''' Test file output '''
     fileOut = iohandle.handleout(self.testOut)
     fileOut.add(self.data1)
     fileOut.add(self.data2)
     fileOut.add(self.data3)
     fileOut.close()
     self.assertTrue(
         filecmp.cmp(
             self.testOut,
             self.testIn
         )
     )
 def test_gzfile_output(self):
     ''' Test gzip file output '''
     fileOut = iohandle.handleout(self.testOutGZ)
     fileOut.add(self.data1)
     fileOut.add(self.data2)
     fileOut.add(self.data3)
     fileOut.close()
     # Extrcat data from file
     fileIn = gzip.open(self.testOutGZ, 'r')
     fileContents = fileIn.readlines()
     fileIn.close()
     # Check file is as expected
     self.assertEqual(
         fileContents,
         [
             self.data1 + '\n',
             '\t'.join(self.data2) + '\n',
             '\t'.join(map(str,self.data3)) + '\n'
         ]
     )
 def test_file_failure(self):
     ''' Test file data failure '''
     fileOut = iohandle.handleout(self.testOut)
     with self.assertRaises(TypeError):
         fileOut.add(['a','b'],['c','d'])
     fileOut.close()
 def test_type_failure(self):
     ''' Test output type failure '''
     with self.assertRaises(TypeError):
         testOut = iohandle.handleout(3)