Branch Coverage

DateTime.xs
Criterion Covered Total %
branch 83 134 61.9


line true false branch
48 25378 72463 return (y % 4) ? 0 : (y % 100) ? 1 : (y % 400) ? 0 : 1;
3886 21492 return (y % 4) ? 0 : (y % 100) ? 1 : (y % 400) ? 0 : 1;
3141 745 return (y % 4) ? 0 : (y % 100) ? 1 : (y % 400) ? 0 : 1;
74 115721 204912 if (d <= 0) {
88 39729 280904 if (m > 12) {
93 57707 262926 EXTEND(SP, extra ? 7 : 3);
0 320633 EXTEND(SP, extra ? 7 : 3);
0 0 EXTEND(SP, extra ? 7 : 3);
98 57707 262926 if (extra) {
102 25451 32256 if ( dow <= 0 ) {
108 14195 43512 if (_real_is_leap_year(y)) {
131 39398 249204 if (m <= 2) {
135 409 248795 } else if (m > 14) {
141 115724 172878 if (y < 0) {
151 0 288602 EXTEND(SP, 1);
173 53 89599 if (utc_secs >= SECONDS_PER_DAY) {
174 0 53 if (utc_secs >= SECONDS_PER_DAY + 1) {
177 0 0 croak("Invalid UTC RD seconds value: %s", SvPV_nolen(newSViv(utc_secs)));
184 1 52 if (h < 0) {
189 0 89652 EXTEND(SP, 3);
200 96 113448 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
113448 96 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
0 113448 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
113448 0 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
201 113448 0 IV d = SvIV(days);
202 113448 0 IV s = SvIV(secs);
205 56 113392 if (s < 0) {
224 0 75 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
75 0 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
0 75 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
75 0 if (Perl_isfinite(SvNV(days)) && Perl_isfinite(SvNV(secs))) {
225 75 0 IV d = SvIV(days);
226 75 0 IV s = SvIV(secs);
229 424 75 while (s < 0) {
238 584382 75 while (s > day_length - 1) {
256 0 57554 EXTEND(SP, 1);
264 0 40134 EXTEND(SP, 1);
275 0 151 EXTEND(SP, 1);
286 0 0 EXTEND(SP, 1);
287 0 0 mPUSHi(day_length > 86400 ? 1 : 0);
295 14 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
14 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
14 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
14 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
14 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 9 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
5 0 SET_LEAP_SECONDS(utc_rd, leap_seconds);
297 0 14 EXTEND(SP, 1);