def test_getFile( self ): """ Test the output of getFile""" global mocked_xrootclient global mocked_xrootd resource = XROOTStorage( 'storageName', self.parameterDict ) statusMock = xrootStatusMock() statusMock.makeOk() mocked_xrootclient.copy.return_value = statusMock, None statusStatMock = xrootStatusMock() statusStatMock.makeOk() statInfoMock = xrootStatInfoMock() statInfoMock.makeFile() statInfoMock.size = -1 updateStatMockReferences(statusStatMock, statInfoMock) # This test should be completely okay copymock = mock.Mock() copymock.run.return_value = (statusMock, None) mocked_xrootd.client.CopyProcess = mock.Mock(return_value = copymock) res = resource.getFile( "a", "/tmp" ) self.assertEqual( True, res['OK'] ) self.assertEqual( {"a" :-1}, res['Value']['Successful'] ) self.assertEqual( {}, res['Value']['Failed'] ) # Here the sizes should not match statInfoMock.size = 1000 updateStatMockReferences(infoval = statInfoMock) res = resource.getFile( "a", "/tmp" ) self.assertEqual( True, res['OK'] ) self.assertEqual( {}, res['Value']['Successful'] ) self.assertEqual( "a", res['Value']['Failed'].keys()[0] ) statInfoMock.size = -1 # Here we should not be able to get the file from storage statusMock.makeError() updateStatMockReferences(statusMock) res = resource.getFile( "a", "/tmp" ) self.assertEqual( True, res['OK'] ) self.assertEqual( {}, res['Value']['Successful'] ) self.assertEqual( "a", res['Value']['Failed'].keys()[0] ) # Fatal error in getting the file from storage updateStatMockReferences(statusMock) statusMock.makeFatal() res = resource.getFile( "a", "/tmp" ) self.assertEqual( True, res['OK'] ) self.assertEqual( {}, res['Value']['Successful'] ) self.assertEqual( "a", res['Value']['Failed'].keys()[0] )
def test_getFile(self): """ Test the output of getFile""" global mocked_xrootclient global mocked_xrootd resource = XROOTStorage('storageName', self.parameterDict) statusMock = xrootStatusMock() statusMock.makeOk() mocked_xrootclient.copy.return_value = statusMock, None statusStatMock = xrootStatusMock() statusStatMock.makeOk() statInfoMock = xrootStatInfoMock() statInfoMock.makeFile() statInfoMock.size = -1 updateStatMockReferences(statusStatMock, statInfoMock) # This test should be completely okay copymock = mock.Mock() copymock.run.return_value = (statusMock, None) mocked_xrootd.client.CopyProcess = mock.Mock(return_value=copymock) res = resource.getFile("a", "/tmp") self.assertEqual(True, res['OK']) self.assertEqual({"a": -1}, res['Value']['Successful']) self.assertEqual({}, res['Value']['Failed']) # Here the sizes should not match statInfoMock.size = 1000 updateStatMockReferences(infoval=statInfoMock) res = resource.getFile("a", "/tmp") self.assertEqual(True, res['OK']) self.assertEqual({}, res['Value']['Successful']) self.assertEqual("a", res['Value']['Failed'].keys()[0]) statInfoMock.size = -1 # Here we should not be able to get the file from storage statusMock.makeError() updateStatMockReferences(statusMock) res = resource.getFile("a", "/tmp") self.assertEqual(True, res['OK']) self.assertEqual({}, res['Value']['Successful']) self.assertEqual("a", res['Value']['Failed'].keys()[0]) # Fatal error in getting the file from storage updateStatMockReferences(statusMock) statusMock.makeFatal() res = resource.getFile("a", "/tmp") self.assertEqual(True, res['OK']) self.assertEqual({}, res['Value']['Successful']) self.assertEqual("a", res['Value']['Failed'].keys()[0])