From 8419e1e1d5ef7ef851600859c3c5617eae6f0e9c Mon Sep 17 00:00:00 2001
From: Jack Robison <jackrobison@lbry.io>
Date: Fri, 15 Sep 2017 13:46:38 -0400
Subject: [PATCH] change some ValueErrors to IOErrors

---
 lbrynet/blob/blob_file.py        | 2 +-
 lbrynet/blob/writer.py           | 5 ++---
 tests/unit/core/test_HashBlob.py | 4 ++--
 3 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/lbrynet/blob/blob_file.py b/lbrynet/blob/blob_file.py
index 032dcbb64..c7a1c45b1 100644
--- a/lbrynet/blob/blob_file.py
+++ b/lbrynet/blob/blob_file.py
@@ -161,7 +161,7 @@ class BlobFile(object):
             d = file_sender.beginFileTransfer(file_handle, reader)
             d.addCallback(close_self)
         else:
-            d = defer.fail(ValueError("Could not read the blob"))
+            d = defer.fail(IOError("Could not read the blob"))
         return d
 
     def writer_finished(self, writer, err=None):
diff --git a/lbrynet/blob/writer.py b/lbrynet/blob/writer.py
index 7e6f4d13f..a95430386 100644
--- a/lbrynet/blob/writer.py
+++ b/lbrynet/blob/writer.py
@@ -22,9 +22,8 @@ class HashBlobWriter(object):
 
     def write(self, data):
         if self.write_handle is None:
-            log.info("writer has already been closed")
-            # can this be changed to IOError?
-            raise ValueError('I/O operation on closed file')
+            log.exception("writer has already been closed")
+            raise IOError('I/O operation on closed file')
 
         self._hashsum.update(data)
         self.len_so_far += len(data)
diff --git a/tests/unit/core/test_HashBlob.py b/tests/unit/core/test_HashBlob.py
index 179313720..d1c282478 100644
--- a/tests/unit/core/test_HashBlob.py
+++ b/tests/unit/core/test_HashBlob.py
@@ -90,8 +90,8 @@ class BlobFileTest(unittest.TestCase):
         writer.close()
         yield self.assertFailure(finished_d, DownloadCanceledError)
 
-        # writes after close will throw a ValueError exception
-        with self.assertRaises(ValueError):
+        # writes after close will throw a IOError exception
+        with self.assertRaises(IOError):
             writer.write(self.fake_content)
 
         # another call to close will do nothing