## name simple. case 1.
## failures 1
## cut

sub inc { $_[0] + 1 }
sub dec { $_[0] - 1 }
sub inc { 1 + $_[0] }

## name simple. case 2.
## failures 0
## cut

sub inc { $_[0] + 1 }
sub dec { $_[0] - 1 }

## name Multiple packages in the same Doc without duplicated sub case 1.
## failures 0
## cut

package Here;
sub inc { $_[0] + 1 }

package There;
sub inc { 1 + $_[0] }

## name Multiple packages in the same Doc without duplicated sub. case 2.
## failures 0
## cut

package Here {
    sub inc { $_[0] + 1 }
};
package There {
    sub inc { 1 + $_[0] }
};
## TODO Multiple packages in the same Doc with duplicated sub case 1.
## failures 1
## cut

package Here;
sub inc { $_[0] + 1 }
sub dec { $_[0] - 1 }
sub inc { 1 + $_[0] }

package There;
sub inc { 1 + $_[0] }

## TODO Multiple packages in the same Doc with duplicated sub. case 2.
## failures 1
## cut

package Here {
    sub inc { $_[0] + 1 }
    sub dec { $_[0] - 1 }
    sub inc { 1 + $_[0] }
};
package There {
    sub inc { 1 + $_[0] }
};

## name Multiple BEGIN, UNITCHECK, CHECK, INIT or END blocks
## failures 0
## cut

BEGIN {}
BEGIN {}
UNITCHECK {}
UNITCHECK {}
CHECK {}
CHECK {}
INIT {}
INIT {}
END {}
END {}