File Coverage

blib/lib/ActiveRecord/Simple/Utils.pm
Criterion Covered Total %
statement 18 18 100.0
branch 1 2 50.0
condition 2 5 40.0
subroutine 4 4 100.0
pod 0 2 0.0
total 25 31 80.6


line stmt bran cond sub pod time code
1             package ActiveRecord::Simple::Utils;
2              
3 11     11   67 use strict;
  11         21  
  11         294  
4 11     11   53 use warnings;
  11         23  
  11         1611  
5              
6              
7             sub quote_sql_stmt {
8 13     13 0 65 my ($sql, $driver_name) = @_;
9              
10 13 50 33     57 return unless $sql && $driver_name;
11              
12 13   50     34 $driver_name //= 'Pg';
13 13         76 my $quotes_map = {
14             Pg => q/"/,
15             mysql => q/`/,
16             SQLite => q/`/,
17             };
18 13         29 my $quote = $quotes_map->{$driver_name};
19              
20 13         70 $sql =~ s/"/$quote/g;
21              
22 13         65 return $sql;
23             }
24              
25             sub class_to_table_name {
26 1     1 0 4 my ($class_name) = @_;
27              
28 1         10 $class_name =~ s/.*:://;
29 1         3 $class_name = lc $class_name;
30 1         2 $class_name .= 's';
31              
32 1         3 return $class_name;
33             }
34              
35             1;