sequelize-log-syntax-colors
Version:
Colors for sequilize console output. Supporting basic MySQL syntax.
67 lines • 2.83 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
var index_1 = __importDefault(require("./index"));
var keywords_1 = require("./keywords");
describe("Highlighting syntax", function () {
it("Can highlight keywords in any case", function () {
for (var _i = 0, sqlKeyWords_1 = keywords_1.sqlKeyWords; _i < sqlKeyWords_1.length; _i++) {
var kv = sqlKeyWords_1[_i];
var text = "example_some " + kv + " other";
var highlighted = (0, index_1.default)(text);
expect(highlighted).not.toEqual(text);
expect(highlighted).toMatchSnapshot();
}
});
it("Can highlight numbers in SQL", function () {
var strings = [
"select * from Table limit 100",
"delete from Table where id = 2387",
];
for (var _i = 0, strings_1 = strings; _i < strings_1.length; _i++) {
var text = strings_1[_i];
var highlighted = (0, index_1.default)(text);
expect(highlighted).not.toEqual(text);
expect(highlighted).toMatchSnapshot();
}
});
it("Can highlight string in SQL", function () {
var strings = [
"select * from Table where `example_column_name` = 'some_value'",
];
for (var _i = 0, strings_2 = strings; _i < strings_2.length; _i++) {
var text = strings_2[_i];
var highlighted = (0, index_1.default)(text);
expect(highlighted).not.toEqual(text);
expect(highlighted).toMatchSnapshot();
}
});
it("Can highlight function in SQL", function () {
var strings = ["SELECT *, dbo.east_or_west(city.long) FROM city;"];
for (var _i = 0, strings_3 = strings; _i < strings_3.length; _i++) {
var text = strings_3[_i];
var highlighted = (0, index_1.default)(text);
expect(highlighted).not.toEqual(text);
expect(highlighted).toMatchSnapshot();
}
});
it("Can capitalize keywords while highlighting", function () {
var text = "select * from Table limit 100";
var highlighted = (0, index_1.default)(text, {
capitalizeKeywords: true,
});
console.log(highlighted);
expect(highlighted).not.toEqual(text);
expect(highlighted).toMatch("SELECT");
expect(highlighted).toMatch("FROM");
expect(highlighted).toMatchSnapshot();
});
it("Can extract keywords", function () {
var text = "select * from Table limit 100";
var kvs = (0, keywords_1.extractKeywords)(text);
expect(kvs).toHaveLength(3);
});
});
//# sourceMappingURL=index.spec.js.map