File: performs_ok.sql

package info (click to toggle)
pgtap 1.3.4-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 2,792 kB
  • sloc: sql: 25,795; sh: 790; makefile: 287; perl: 175
file content (83 lines) | stat: -rw-r--r-- 1,793 bytes parent folder | download | duplicates (4)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
\unset ECHO
\i test/setup.sql

SELECT plan(24);
--SELECT * FROM no_plan();

/****************************************************************************/
-- Test performs_ok().
SELECT * FROM check_test(
    performs_ok( 'SELECT TRUE', 500, 'whatever' ),
    true,
    'simple select',
    'whatever',
    ''
);

SELECT * FROM check_test(
    performs_ok( 'SELECT TRUE', 500 ),
    true,
    'simple select no desc',
    'Should run in less than 500 ms',
    ''
);

SELECT * FROM check_test(
    performs_ok( 'SELECT TRUE', 199.99 ),
    true,
    'simple select numeric',
    'Should run in less than 199.99 ms',
    ''
);

PREPARE mytest AS SELECT TRUE;
SELECT * FROM check_test(
    performs_ok( 'mytest', 100 ),
    true,
    'simple prepare',
    'Should run in less than 100 ms',
    ''
);

SELECT * FROM check_test(
    performs_ok( 'EXECUTE mytest', 100 ),
    true,
    'simple execute',
    'Should run in less than 100 ms',
    ''
);

SELECT * FROM check_test(
    performs_ok( 'SELECT TRUE', 0, 'whatever' ),
    false,
    'simple select fail',
    'whatever',
    '      runtime: [[:digit:]]+([.][[:digit:]]+)? ms
      exceeds: 0 ms',
    true
);

SELECT * FROM check_test(
    performs_ok( 'SELECT TRUE', 0 ),
    false,
    'simple select no desc fail',
    'Should run in less than 0 ms',
    '      runtime: [[:digit:]]+([.][[:digit:]]+)? ms
      exceeds: 0 ms',
    true
);

SELECT * FROM check_test(
    performs_ok( 'SELECT TRUE', 0.00 ),
    false,
    'simple select no desc numeric fail',
    'Should run in less than 0.00 ms',
    '      runtime: [[:digit:]]+([.][[:digit:]]+)? ms
      exceeds: 0.00 ms',
    true
);

/****************************************************************************/
-- Finish the tests and clean up.
SELECT * FROM finish();
ROLLBACK;