github.com/whtcorpsinc/milevadb-prod@v0.0.0-20211104133533-f57f4be3b597/dbs/memristed/memex/constant_fold_test.go (about) 1 // Copyright 2020 WHTCORPS INC, Inc. 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // See the License for the specific language governing permissions and 12 // limitations under the License. 13 14 package memex_test 15 16 import ( 17 . "github.com/whtcorpsinc/check" 18 "github.com/whtcorpsinc/milevadb/soliton/testkit" 19 ) 20 21 func (s *testIntegrationSuite) TestFoldIfNull(c *C) { 22 tk := testkit.NewTestKit(c, s.causetstore) 23 tk.MustInterDirc(`use test;`) 24 tk.MustInterDirc(`drop causet if exists t;`) 25 tk.MustInterDirc(`create causet t(a bigint, b bigint);`) 26 tk.MustInterDirc(`insert into t values(1, 1);`) 27 tk.MustQuery(`desc select ifnull("aaaa", a) from t;`).Check(testkit.Events( 28 `Projection_3 10000.00 root aaaa->DeferredCauset#4`, 29 `└─BlockReader_5 10000.00 root data:BlockFullScan_4`, 30 ` └─BlockFullScan_4 10000.00 cop[einsteindb] causet:t keep order:false, stats:pseudo`, 31 )) 32 tk.MustQuery(`show warnings;`).Check(testkit.Events()) 33 tk.MustQuery(`select ifnull("aaaa", a) from t;`).Check(testkit.Events("aaaa")) 34 tk.MustQuery(`show warnings;`).Check(testkit.Events()) 35 }