Make the sqlite tests pass.
diff --git a/Lib/sqlite3/test/factory.py b/Lib/sqlite3/test/factory.py
index 61edc6c..f20848f 100644
--- a/Lib/sqlite3/test/factory.py
+++ b/Lib/sqlite3/test/factory.py
@@ -139,32 +139,32 @@
         self.con = sqlite.connect(":memory:")
 
     def CheckUnicode(self):
-        austria = str("Österreich", "latin1")
+        austria = "Österreich"
         row = self.con.execute("select ?", (austria,)).fetchone()
         self.failUnless(type(row[0]) == str, "type of row[0] must be unicode")
 
     def CheckString(self):
-        self.con.text_factory = str
-        austria = str("Österreich", "latin1")
+        self.con.text_factory = bytes
+        austria = "Österreich"
         row = self.con.execute("select ?", (austria,)).fetchone()
-        self.failUnless(type(row[0]) == str, "type of row[0] must be str")
+        self.failUnless(type(row[0]) == bytes, "type of row[0] must be bytes")
         self.failUnless(row[0] == austria.encode("utf-8"), "column must equal original data in UTF-8")
 
     def CheckCustom(self):
         self.con.text_factory = lambda x: str(x, "utf-8", "ignore")
-        austria = str("Österreich", "latin1")
-        row = self.con.execute("select ?", (austria.encode("latin1"),)).fetchone()
+        austria = "Österreich"
+        row = self.con.execute("select ?", (austria,)).fetchone()
         self.failUnless(type(row[0]) == str, "type of row[0] must be unicode")
         self.failUnless(row[0].endswith("reich"), "column must contain original data")
 
     def CheckOptimizedUnicode(self):
         self.con.text_factory = sqlite.OptimizedUnicode
-        austria = str("Österreich", "latin1")
-        germany = str("Deutchland")
+        austria = "Österreich"
+        germany = "Deutchland"
         a_row = self.con.execute("select ?", (austria,)).fetchone()
         d_row = self.con.execute("select ?", (germany,)).fetchone()
         self.failUnless(type(a_row[0]) == str, "type of non-ASCII row must be unicode")
-        self.failUnless(type(d_row[0]) == str, "type of ASCII-only row must be str")
+        self.failUnless(type(d_row[0]) == str8, "type of ASCII-only row must be str8")
 
     def tearDown(self):
         self.con.close()
diff --git a/Lib/sqlite3/test/types.py b/Lib/sqlite3/test/types.py
index 232a32c..20f0093 100644
--- a/Lib/sqlite3/test/types.py
+++ b/Lib/sqlite3/test/types.py
@@ -62,7 +62,7 @@
         self.failUnlessEqual(row[0], val)
 
     def CheckBlob(self):
-        val = buffer("Guglhupf")
+        val = buffer(b"Guglhupf")
         self.cur.execute("insert into test(b) values (?)", (val,))
         self.cur.execute("select b from test")
         row = self.cur.fetchone()
@@ -203,7 +203,7 @@
 
     def CheckBlob(self):
         # default
-        val = buffer("Guglhupf")
+        val = buffer(b"Guglhupf")
         self.cur.execute("insert into test(bin) values (?)", (val,))
         self.cur.execute("select bin from test")
         row = self.cur.fetchone()
@@ -304,7 +304,7 @@
         self.con.close()
 
     def CheckBinaryInputForConverter(self):
-        testdata = "abcdefg" * 10
+        testdata = b"abcdefg" * 10
         result = self.con.execute('select ? as "x [bin]"', (buffer(bz2.compress(testdata)),)).fetchone()[0]
         self.failUnlessEqual(testdata, result)
 
diff --git a/Lib/sqlite3/test/userfunctions.py b/Lib/sqlite3/test/userfunctions.py
index a2f2574..bc8e6d2 100644
--- a/Lib/sqlite3/test/userfunctions.py
+++ b/Lib/sqlite3/test/userfunctions.py
@@ -36,7 +36,7 @@
 def func_returnnull():
     return None
 def func_returnblob():
-    return buffer("blob")
+    return buffer(b"blob")
 def func_raiseexception():
     5/0
 
@@ -197,7 +197,7 @@
         cur.execute("select returnblob()")
         val = cur.fetchone()[0]
         self.failUnlessEqual(type(val), buffer)
-        self.failUnlessEqual(val, buffer("blob"))
+        self.failUnlessEqual(val, buffer(b"blob"))
 
     def CheckFuncException(self):
         cur = self.con.cursor()