MCPcopy Create free account
hub / github.com/araddon/qlbridge / TestLexSqlCreate

Function TestLexSqlCreate

lex/dialect_sql_test.go:95–239  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

93}
94
95func TestLexSqlCreate(t *testing.T) {
96
97 // CREATE {DATABASE | SCHEMA | SOURCE | VIEW | CONTINUOUSVIEW} [IF NOT EXISTS] db_name
98 // [create_specification] ...
99 verifyTokens(t, `CREATE SCHEMA IF NOT EXISTS mysource
100 WITH stuff = "hello";
101 `,
102 []Token{
103 tv(TokenCreate, "CREATE"),
104 tv(TokenSchema, "SCHEMA"),
105 tv(TokenIf, "IF"),
106 tv(TokenNegate, "NOT"),
107 tv(TokenExists, "EXISTS"),
108 tv(TokenIdentity, "mysource"),
109 tv(TokenWith, "WITH"),
110 tv(TokenIdentity, "stuff"),
111 tv(TokenEqual, "="),
112 tv(TokenValue, "hello"),
113 })
114
115 verifyTokens(t, `CREATE SCHEMA mysource WITH stuff = "hello";`,
116 []Token{
117 tv(TokenCreate, "CREATE"),
118 tv(TokenSchema, "SCHEMA"),
119 tv(TokenIdentity, "mysource"),
120 tv(TokenWith, "WITH"),
121 tv(TokenIdentity, "stuff"),
122 tv(TokenEqual, "="),
123 tv(TokenValue, "hello"),
124 })
125
126 verifyTokens(t, `CREATE DATABASE mydb WITH stuff = "hello";`,
127 []Token{
128 tv(TokenCreate, "CREATE"),
129 tv(TokenDatabase, "DATABASE"),
130 tv(TokenIdentity, "mydb"),
131 tv(TokenWith, "WITH"),
132 tv(TokenIdentity, "stuff"),
133 tv(TokenEqual, "="),
134 tv(TokenValue, "hello"),
135 })
136
137 verifyTokens(t, `CREATE SOURCE mysource WITH stuff = "hello";`,
138 []Token{
139 tv(TokenCreate, "CREATE"),
140 tv(TokenSource, "SOURCE"),
141 tv(TokenIdentity, "mysource"),
142 tv(TokenWith, "WITH"),
143 tv(TokenIdentity, "stuff"),
144 tv(TokenEqual, "="),
145 tv(TokenValue, "hello"),
146 })
147
148 verifyTokens(t, `CREATE OR REPLACE VIEW viewx
149 AS SELECT a, b FROM mydb.tbl
150 WITH stuff = "hello";`,
151 []Token{
152 tv(TokenCreate, "CREATE"),

Callers

nothing calls this directly

Calls 2

verifyTokensFunction · 0.70
tvFunction · 0.70

Tested by

no test coverage detected