(t *testing.T)
| 31 | } |
| 32 | |
| 33 | func TestLexSqlShow(t *testing.T) { |
| 34 | /* |
| 35 | show myidentity |
| 36 | */ |
| 37 | verifyTokens(t, `SHOW mytable;`, |
| 38 | []Token{ |
| 39 | tv(TokenShow, "SHOW"), |
| 40 | tv(TokenIdentity, "mytable"), |
| 41 | }) |
| 42 | verifyTokens(t, `SHOW CREATE TRIGGER mytrigger;`, |
| 43 | []Token{ |
| 44 | tv(TokenShow, "SHOW"), |
| 45 | tv(TokenCreate, "CREATE"), |
| 46 | tv(TokenIdentity, "TRIGGER"), |
| 47 | tv(TokenIdentity, "mytrigger"), |
| 48 | }) |
| 49 | verifyTokenTypes(t, "SHOW FULL TABLES FROM `ourschema` LIKE '%'", |
| 50 | []TokenType{TokenShow, |
| 51 | TokenFull, TokenTables, |
| 52 | TokenFrom, TokenIdentity, TokenLike, TokenValue, |
| 53 | }) |
| 54 | |
| 55 | /* |
| 56 | SHOW TABLES |
| 57 | FROM `<yourdbname>` |
| 58 | WHERE |
| 59 | `Tables_in_<yourdbname>` LIKE '%cms%' |
| 60 | OR `Tables_in_<yourdbname>` LIKE '%role%'; |
| 61 | */ |
| 62 | // SHOW TRIGGERS [FROM db_name] [like_or_where] |
| 63 | verifyTokens(t, `SHOW TRIGGERS FROM mydb LIKE "tr*";`, |
| 64 | []Token{ |
| 65 | tv(TokenShow, "SHOW"), |
| 66 | tv(TokenIdentity, "TRIGGERS"), |
| 67 | tv(TokenFrom, "FROM"), |
| 68 | tv(TokenIdentity, "mydb"), |
| 69 | tv(TokenLike, "LIKE"), |
| 70 | tv(TokenValue, "tr*"), |
| 71 | }) |
| 72 | verifyTokens(t, "SHOW TRIGGERS FROM mydb WHERE `Triggers_in_mydb` LIKE 'tr*';", |
| 73 | []Token{ |
| 74 | tv(TokenShow, "SHOW"), |
| 75 | tv(TokenIdentity, "TRIGGERS"), |
| 76 | tv(TokenFrom, "FROM"), |
| 77 | tv(TokenIdentity, "mydb"), |
| 78 | tv(TokenWhere, "WHERE"), |
| 79 | tv(TokenIdentity, "Triggers_in_mydb"), |
| 80 | tv(TokenLike, "LIKE"), |
| 81 | tv(TokenValue, "tr*"), |
| 82 | }) |
| 83 | // SHOW INDEX FROM tbl_name [FROM db_name] |
| 84 | verifyTokens(t, `SHOW INDEX FROM mydb LIKE "idx*";`, |
| 85 | []Token{ |
| 86 | tv(TokenShow, "SHOW"), |
| 87 | tv(TokenIdentity, "INDEX"), |
| 88 | tv(TokenFrom, "FROM"), |
| 89 | tv(TokenIdentity, "mydb"), |
| 90 | tv(TokenLike, "LIKE"), |
nothing calls this directly
no test coverage detected