LCOV - differential code coverage report
Current view: top level - src/interfaces/ecpg/test/sql - indicators.pgc (source / functions) Coverage Total Hit CBC
Current: c70b6db34ffeab48beef1fb4ce61bcad3772b8dd vs 06473f5a344df8c9594ead90a609b86f6724cff8 Lines: 100.0 % 26 26 26
Current Date: 2025-09-06 07:49:51 +0900 Functions: 100.0 % 1 1 1
Baseline: lcov-20250907-010129-baseline Line coverage date bins:
Baseline Date: 2025-09-05 08:21:35 +0100 (360..) days: 100.0 % 26 26 26
Legend: Lines:     hit not hit Function coverage date bins:
(360..) days: 100.0 % 1 1 1

 Age         Owner                  TLA  Line data    Source code
                                  1                 : #include <stdio.h>
                                  2                 : 
                                  3                 : exec sql include sqlca;
                                  4                 : exec sql include ../regression;
                                  5                 : 
 5954 meskes@postgresql.or        6 CBC           1 : int main()
                                  7                 : {
                                  8                 :     exec sql begin declare section;
 6976                             9               1 :         int intvar = 5;
                                 10               1 :         int nullind = -1;
                                 11                 :     exec sql end declare section;
                                 12                 : 
                                 13               1 :     ECPGdebug(1,stderr);
                                 14                 : 
                                 15               1 :     exec sql connect to REGRESSDB1;
                                 16               1 :     exec sql set autocommit to off;
                                 17                 : 
 6599                            18               1 :     exec sql create table indicator_test (
                                 19                 :          "id" int primary key,
                                 20                 :          "str" text NOT NULL,
                                 21                 :           val int null);
 6976                            22               1 :     exec sql commit work;
                                 23                 : 
 6599                            24               1 :     exec sql insert into indicator_test (id, str, val) values ( 1, 'Hello', 0);
                                 25                 : 
                                 26                 :     /* use indicator in insert */
                                 27               1 :     exec sql insert into indicator_test (id, str, val) values ( 2, 'Hi there', :intvar :nullind);
 6976                            28               1 :     nullind = 0;
 6599                            29               1 :     exec sql insert into indicator_test (id, str, val) values ( 3, 'Good evening', :intvar :nullind);
 6976                            30               1 :     exec sql commit work;
                                 31                 : 
                                 32                 :     /* use indicators to get information about selects */
 6599                            33               1 :     exec sql select val into :intvar from indicator_test where id = 1;
                                 34               1 :     exec sql select val into :intvar :nullind from indicator_test where id = 2;
 6976                            35               1 :     printf("intvar: %d, nullind: %d\n", intvar, nullind);
 6599                            36               1 :     exec sql select val into :intvar :nullind from indicator_test where id = 3;
 6976                            37               1 :     printf("intvar: %d, nullind: %d\n", intvar, nullind);
                                 38                 : 
                                 39                 :     /* use indicators for update */
                                 40               1 :     intvar = 5; nullind = -1;
 6599                            41               1 :     exec sql update indicator_test set val = :intvar :nullind where id = 1;
                                 42               1 :     exec sql select val into :intvar :nullind from indicator_test where id = 1;
 6976                            43               1 :     printf("intvar: %d, nullind: %d\n", intvar, nullind);
                                 44                 : 
 6599                            45               1 :     exec sql drop table indicator_test;
 6976                            46               1 :     exec sql commit work;
                                 47                 : 
                                 48               1 :     exec sql disconnect;
                                 49               1 :     return 0;
                                 50                 : }
        

Generated by: LCOV version 2.4-beta