mirror of
https://github.com/percona/percona-toolkit.git
synced 2025-12-20 02:20:04 +08:00
Fix pt-find.t by using new stored code that was removed from the new sakila.sql.
This commit is contained in:
30
t/lib/samples/stored-objs.sql
Normal file
30
t/lib/samples/stored-objs.sql
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
DROP DATABASE IF EXISTS pt_find;
|
||||||
|
CREATE DATABASE pt_find;
|
||||||
|
USE pt_find;
|
||||||
|
|
||||||
|
create table t1 (
|
||||||
|
id int not null primary key
|
||||||
|
) engine=innodb;
|
||||||
|
|
||||||
|
create table t2 (
|
||||||
|
id int not null primary key
|
||||||
|
) engine=innodb;
|
||||||
|
|
||||||
|
CREATE FUNCTION hello (s CHAR(20))
|
||||||
|
RETURNS CHAR(50) DETERMINISTIC
|
||||||
|
RETURN CONCAT('Hello, ',s,'!');
|
||||||
|
|
||||||
|
delimiter //
|
||||||
|
|
||||||
|
CREATE PROCEDURE simpleproc (OUT param1 INT)
|
||||||
|
BEGIN
|
||||||
|
SELECT COUNT(*) INTO param1 FROM t;
|
||||||
|
END//
|
||||||
|
|
||||||
|
CREATE TRIGGER ins_trg BEFORE INSERT ON t1
|
||||||
|
FOR EACH ROW BEGIN
|
||||||
|
INSERT INTO t2 VALUES (NEW.id);
|
||||||
|
END;
|
||||||
|
//
|
||||||
|
|
||||||
|
delimiter ;
|
||||||
@@ -26,6 +26,8 @@ else {
|
|||||||
plan tests => 23;
|
plan tests => 23;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$sb->load_file('master', 't/lib/samples/stored-objs.sql');
|
||||||
|
|
||||||
my $output;
|
my $output;
|
||||||
my $cnf = '/tmp/12345/my.sandbox.cnf';
|
my $cnf = '/tmp/12345/my.sandbox.cnf';
|
||||||
my $cmd = "$trunk/bin/pt-find -F $cnf ";
|
my $cmd = "$trunk/bin/pt-find -F $cnf ";
|
||||||
@@ -112,14 +114,14 @@ SKIP: {
|
|||||||
);
|
);
|
||||||
|
|
||||||
# Test --procedure.
|
# Test --procedure.
|
||||||
$output = `$cmd sakila --procedure min_monthly_purchases --print`;
|
$output = `$cmd pt_find --procedure param1 --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
"`sakila`.`PROCEDURE rewards_report`\n",
|
"`pt_find`.`PROCEDURE simpleproc`\n",
|
||||||
'--procedure that matches'
|
'--procedure that matches'
|
||||||
);
|
);
|
||||||
|
|
||||||
$output = `$cmd sakila --procedure blah --print`;
|
$output = `$cmd pt_find --procedure blah --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
'',
|
'',
|
||||||
@@ -127,14 +129,14 @@ SKIP: {
|
|||||||
);
|
);
|
||||||
|
|
||||||
# Test --function.
|
# Test --function.
|
||||||
$output = `$cmd sakila --function v_out --print`;
|
$output = `$cmd pt_find --function Hello --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
"`sakila`.`FUNCTION inventory_in_stock`\n",
|
"`pt_find`.`FUNCTION hello`\n",
|
||||||
'--function that matches'
|
'--function that matches'
|
||||||
);
|
);
|
||||||
|
|
||||||
$output = `$cmd sakila --function blah --print`;
|
$output = `$cmd pt_find --function blah --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
'',
|
'',
|
||||||
@@ -142,14 +144,14 @@ SKIP: {
|
|||||||
);
|
);
|
||||||
|
|
||||||
# Test --trigger without --trigger-table.
|
# Test --trigger without --trigger-table.
|
||||||
$output = `$cmd sakila --trigger 'UPDATE film_text' --print`;
|
$output = `$cmd pt_find --trigger 'INSERT INTO t2' --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
"`sakila`.`UPDATE TRIGGER upd_film on film`\n",
|
"`pt_find`.`INSERT TRIGGER ins_trg on t1`\n",
|
||||||
'--trigger that matches without --trigger-table'
|
'--trigger that matches without --trigger-table'
|
||||||
);
|
);
|
||||||
|
|
||||||
$output = `$cmd sakila --trigger blah --print`;
|
$output = `$cmd pt_find --trigger blah --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
'',
|
'',
|
||||||
@@ -157,28 +159,28 @@ SKIP: {
|
|||||||
);
|
);
|
||||||
|
|
||||||
# Test --trigger with --trigger-table.
|
# Test --trigger with --trigger-table.
|
||||||
$output = `$cmd sakila --trigger 'UPDATE film_text' --trigger-table film --print`;
|
$output = `$cmd pt_find --trigger 'INSERT INTO t2' --trigger-table t1 --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
"`sakila`.`UPDATE TRIGGER upd_film on film`\n",
|
"`pt_find`.`INSERT TRIGGER ins_trg on t1`\n",
|
||||||
'--trigger that matches with matching --trigger-table'
|
'--trigger that matches with matching --trigger-table'
|
||||||
);
|
);
|
||||||
|
|
||||||
$output = `$cmd sakila --trigger blah --trigger-table film --print`;
|
$output = `$cmd pt_find --trigger blah --trigger-table t1 --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
'',
|
'',
|
||||||
"--trigger that doesn't match with matching --trigger-table"
|
"--trigger that doesn't match with matching --trigger-table"
|
||||||
);
|
);
|
||||||
|
|
||||||
$output = `$cmd sakila --trigger 'UPDATE film_text' --trigger-table foo --print`;
|
$output = `$cmd pt_find --trigger 'INSERT INTO t2' --trigger-table foo --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
'',
|
'',
|
||||||
'--trigger that matches with non-matching --trigger-table'
|
'--trigger that matches with non-matching --trigger-table'
|
||||||
);
|
);
|
||||||
|
|
||||||
$output = `$cmd sakila --trigger blah --trigger-table foo --print`;
|
$output = `$cmd pt_find --trigger blah --trigger-table foo --print`;
|
||||||
is(
|
is(
|
||||||
$output,
|
$output,
|
||||||
'',
|
'',
|
||||||
|
|||||||
Reference in New Issue
Block a user