File: gh-3888-values-blob-assert.test.lua

package info (click to toggle)
tarantool 2.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 85,364 kB
  • sloc: ansic: 513,760; cpp: 69,489; sh: 25,650; python: 19,190; perl: 14,973; makefile: 4,173; yacc: 1,329; sql: 1,074; pascal: 620; ruby: 190; awk: 18; lisp: 7
file content (33 lines) | stat: -rw-r--r-- 1,006 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
-- sql: assertion fault on VALUES #3888
--
-- Make sure that tokens representing values of integer, float,
-- and blob constants are different from tokens representing
-- keywords of the same names.
--
test_run = require('test_run').new()
engine = test_run:get_cfg('engine')
_ = box.space._session_settings:update('sql_default_engine', {{'=', 2, engine}})

-- check 'VALUES' against typedef keywords (should fail)
box.execute('VALUES(scalar)')
box.execute('VALUES(float)')

-- check 'SELECT' against typedef keywords (should fail)
box.execute('SELECT scalar')
box.execute('SELECT float')

-- check 'VALUES' against ID (should fail)
box.execute('VALUES(TheColumnName)')

-- check 'SELECT' against ID (should fail)
box.execute('SELECT TheColumnName')

-- check 'VALUES' well-formed expression  (returns value)
box.execute('VALUES(-0.5e-2)')
box.execute('SELECT X\'507265766564\'')

-- check 'SELECT' well-formed expression  (return value)
box.execute('SELECT 3.14')
box.execute('SELECT X\'4D6564766564\'')