test-binary-charset-string.js 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. var common = require('../../common');
  2. var connection = common.createConnection();
  3. var assert = require('assert');
  4. var rows = undefined;
  5. var fields = undefined;
  6. var rows1 = undefined;
  7. var fields1 = undefined;
  8. var rows2 = undefined;
  9. var fields2 = undefined;
  10. var rows3 = undefined;
  11. var fields3 = undefined;
  12. var rows4 = undefined;
  13. var fields4 = undefined;
  14. var rows5 = undefined;
  15. var fields5 = undefined;
  16. var query = "SELECT x'010203'";
  17. var query1 = "SELECT '010203'";
  18. connection.query(query, function(err, _rows, _fields) {
  19. if (err) throw err;
  20. rows = _rows;
  21. fields = _fields;
  22. });
  23. connection.query(query, function(err, _rows, _fields) {
  24. if (err) throw err;
  25. rows5 = _rows;
  26. fields5 = _fields;
  27. });
  28. connection.query(query1, function(err, _rows, _fields) {
  29. if (err) throw err;
  30. rows1 = _rows;
  31. fields1 = _fields;
  32. });
  33. connection.execute(query, [], function(err, _rows, _fields) {
  34. if (err) throw err;
  35. rows2 = _rows;
  36. fields2 = _fields;
  37. });
  38. // repeat same query - test cached fields and parser
  39. connection.execute(query, [], function(err, _rows, _fields) {
  40. if (err) throw err;
  41. rows4 = _rows;
  42. fields4 = _fields;
  43. });
  44. connection.execute(query1, [], function(err, _rows, _fields) {
  45. if (err) throw err;
  46. rows3 = _rows;
  47. fields3 = _fields;
  48. connection.end();
  49. });
  50. process.on('exit', function() {
  51. assert.deepEqual(rows, [{"x'010203'": Buffer([1, 2, 3])}]);
  52. assert.equal(fields[0].name, "x'010203'");
  53. assert.deepEqual(rows1, [{'010203': '010203'}]);
  54. assert.equal(fields1[0].name, "010203");
  55. assert.deepEqual(rows2, [{"x'010203'": Buffer([1, 2, 3])}]);
  56. assert.equal(fields2[0].name, "x'010203'");
  57. assert.deepEqual(rows3, [{'010203': '010203'}]);
  58. assert.equal(fields3[0].name, "010203");
  59. assert.deepEqual(rows4, [{"x'010203'": Buffer([1, 2, 3])}]);
  60. assert.equal(fields4[0].name, "x'010203'");
  61. assert.deepEqual(rows5, [{"x'010203'": Buffer([1, 2, 3])}]);
  62. assert.equal(fields5[0].name, "x'010203'");
  63. });