HEX
Server: nginx/1.24.0
System: Linux nowruzgan 6.8.0-57-generic #59-Ubuntu SMP PREEMPT_DYNAMIC Sat Mar 15 17:40:59 UTC 2025 x86_64
User: babak (1000)
PHP: 8.3.6
Disabled: NONE
Upload Files
File: /var/dev/nowruzgan/rest/node_modules/machinepack-mysql/test/queryable/compile-statement.test.js
var assert = require('assert');
var Pack = require('../../');

describe('Queryable ::', function() {
  describe('Compile Statement', function() {
    it('should generate a SQL Statement from a WLQL query', function(done) {
      Pack.compileStatement({
        statement: {
          select: ['title', 'author', 'year'],
          from: 'books'
        }
      })
      .exec(function(err, report) {
        if (err) {
          return done(err);
        }

        assert.equal(report.nativeQuery, 'select `title`, `author`, `year` from `books`');
        return done();
      });
    });

    // FUTURE: Add lots of checking to the statement compiler
    it.skip('should return the malformed exit for bad WLQL', function(done) {
      Pack.compileStatement({
        statement: {
          foo: 'bar',
          from: 'books'
        }
      })
      .exec(function(err) {
        try {
          assert(err);
          assert.equal(err.exit, 'malformed', 'Instead got '+err.stack);
        } catch (err2) { return done(err2); }

        return done();
      });
    });
  });
});