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: "!=" }, ]); });