From e838e879c00db8ec7c450d981bfa03bd619c60fc Mon Sep 17 00:00:00 2001 From: Pierre Paridans Date: Wed, 26 Jun 2019 14:37:21 +0200 Subject: [PATCH] [FIX] qweb: add missing not equals operators Implement "!=" and "!==" operator support in QWeb. --- src/qweb_expressions.ts | 2 +- tests/qweb_expressions.test.ts | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/qweb_expressions.ts b/src/qweb_expressions.ts index 28a030ab..a47f2f13 100644 --- a/src/qweb_expressions.ts +++ b/src/qweb_expressions.ts @@ -82,7 +82,7 @@ const STATIC_TOKEN_MAP: { [key: string]: TKind } = { ")": "RIGHT_PAREN" }; -const OPERATORS = ".,===,==,+,!,||,&&,>=,>,<=,<,?,-,*,/,%".split(','); +const OPERATORS = ".,===,==,+,!==,!=,!,||,&&,>=,>,<=,<,?,-,*,/,%".split(','); type Tokenizer = (expr: string) => Token | false; diff --git a/tests/qweb_expressions.test.ts b/tests/qweb_expressions.test.ts index 3a3eb714..f1c8aafc 100644 --- a/tests/qweb_expressions.test.ts +++ b/tests/qweb_expressions.test.ts @@ -40,11 +40,13 @@ describe("tokenizer", () => { }); test("various operators", () => { - expect(tokenize(">= <= < >")).toEqual([ + expect(tokenize(">= <= < > !== !=")).toEqual([ { type: "OPERATOR", value: ">=" }, { type: "OPERATOR", value: "<=" }, { type: "OPERATOR", value: "<" }, { type: "OPERATOR", value: ">" }, + { type: "OPERATOR", value: "!==" }, + { type: "OPERATOR", value: "!=" }, ]); });