changeset 748:50b8cc8200cd

Correct test Test_PSsetBytes() by explicitly converting a unicode String to a UTF-8 bytes array. Previously it relied on the platform's default charset, which was not UTF-8 on MS Windows.
author Martin van Dinther <martin.van.dinther@monetdbsolutions.com>
date Thu, 16 Mar 2023 16:12:06 +0100 (2023-03-16)
parents 342fc48c95cd
children a604e71a875e
files tests/JDBC_API_Tester.java
diffstat 1 files changed, 9 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/tests/JDBC_API_Tester.java
+++ b/tests/JDBC_API_Tester.java
@@ -2470,17 +2470,17 @@ final public class JDBC_API_Tester {
 			.append(" parameters\n");
 			String val = "0123456789abcdef";
 			pstmt.setString(1, val);
-			pstmt.setBytes(2, val.getBytes());
+			pstmt.setBytes(2, val.getBytes("UTF-8"));
 			sb.append("3 Insert data row 1\n");
 			pstmt.execute();
-			val += "~!@#$%^&*()_+`1-=][{}\\|';:,<.>/?";
+			val = "~!@#$%^&*()_+`1-=][{}\\|';:,<.>/?";
 			pstmt.setString(1, val);
-			pstmt.setBytes(2, val.getBytes());
+			pstmt.setBytes(2, val.getBytes("UTF-8"));
 			sb.append("4 Insert data row 2\n");
 			pstmt.execute();
-			val = "\u00e0\u004f\u20f0\u0020\u00ea\u003a\u0069\u0010\u00a2\u00d8\u0008\u0001\u002b\u0030\u0030\u019c\u129e";
+			val = "\u00e0\u004f\u20f0\u0020\u00ea\u003a\u0069\u0010\u00a2\u00d8\u0008\u0001\u002b\u0030\u019c\u129e";
 			pstmt.setString(1, val);
-			pstmt.setBytes(2, val.getBytes());
+			pstmt.setBytes(2, val.getBytes("UTF-8"));
 			sb.append("4 Insert data row 3\n");
 			pstmt.execute();
 			pstmt.close();
@@ -2519,6 +2519,8 @@ final public class JDBC_API_Tester {
 			pstmt = null;
 		} catch (SQLException e) {
 			sb.append("FAILED: ").append(e.getMessage()).append("\n");
+		} catch (java.io.UnsupportedEncodingException e) {
+			sb.append("FAILED: ").append(e.getMessage()).append("\n");
 		}
 
 		closeStmtResSet(pstmt, rs);
@@ -2556,8 +2558,8 @@ final public class JDBC_API_Tester {
 			"7 Show data rows\n" +
 			"col1	len_col1	col2	len_col2\n" +
 			"0123456789abcdef	16	30313233343536373839616263646566	30313233343536373839616263646566	16\n" +
-			"0123456789abcdef~!@#$%^&*()_+`1-=][{}|';:,<.>/?	47	303132333435363738396162636465667E21402324255E262A28295F2B60312D3D5D5B7B7D5C7C273B3A2C3C2E3E2F3F	303132333435363738396162636465667E21402324255E262A28295F2B60312D3D5D5B7B7D5C7C273B3A2C3C2E3E2F3F	48\n" +
-			"\u00e0\u004f\u20f0\u0020\u00ea\u003a\u0069\u0010\u00a2\u00d8\u0008\u0001\u002b\u0030\u0030\u019c\u129e	17	C3A04FE283B020C3AA3A6910C2A2C39808012B3030C69CE18A9E	C3A04FE283B020C3AA3A6910C2A2C39808012B3030C69CE18A9E	26\n" +
+			"~!@#$%^&*()_+`1-=][{}|';:,<.>/?	31	7E21402324255E262A28295F2B60312D3D5D5B7B7D5C7C273B3A2C3C2E3E2F3F	7E21402324255E262A28295F2B60312D3D5D5B7B7D5C7C273B3A2C3C2E3E2F3F	32\n" +
+			"\u00e0\u004f\u20f0\u0020\u00ea\u003a\u0069\u0010\u00a2\u00d8\u0008\u0001\u002b\u0030\u019c\u129e	16	C3A04FE283B020C3AA3A6910C2A2C39808012B30C69CE18A9E	C3A04FE283B020C3AA3A6910C2A2C39808012B30C69CE18A9E	25\n" +
 			"8 Drop table\n" +
 			"  pstmt has 0 result columns and 0 parameters\n");
 	}