App-Fasops

 view release on metacpan or  search on metacpan

t/90-common.t  view on Meta::CPAN

{
    print "#calc_gc_ratio\n";

    my @data = (
        [ "ATAA",            0 ],
        [ "AtaA",            0 ],
        [ "CCGC",            1 ],
        [ "CcGc",            1 ],
        [ "TAGggATaaC",      0.4 ],
        [ "GCaN--NN--NNNaC", 0.6 ],
        [ [ "ATAA", "CCGC" ], 0.5 ],
        [ "AAAATTTTGG",               0.2 ],
        [ "TTAGCCGCTGAGAAGC",         0.5625 ],
        [ "GATTATCATCACCCCAGCCACATW", 0.4783 ],
        [ [qw{ AAAATTTTGG AAAATTTTTG }],                             0.15 ],
        [ [qw{ TTAGCCGCTGAGAAGC GTAGCCGCTGA-AGGC }],                 0.6146 ],
        [ [qw{ GATTATCATCACCCCAGCCACATW GATTTT--TCACTCCATTCGCATA }], 0.4209 ],
    );

    for my $i ( 0 .. $#data ) {
        my ( $ori, $expected ) = @{ $data[$i] };
        my $result = App::Fasops::Common::calc_gc_ratio( ref $ori eq "ARRAY" ? $ori : [$ori] );
        Test::Number::Delta::delta_ok( $result, $expected, "calc_gc_ratio $i" );
    }
}

{
    print "#multi_seq_stat\n";

    #$seq_legnth,            $number_of_comparable_bases,
    #$number_of_identities,  $number_of_differences,
    #$number_of_gaps,        $number_of_n,
    #$number_of_align_error, $D,
    my @data = (

        #                   *
        [   [   qw{ AAAATTTTGG
                    AAAATTTTTG }
            ],
            [ 10, 10, 9, 1, 0, 0, 0, 0.1, ],
        ],

        #           *          * *
        [   [   qw{ TTAGCCGCTGAGAAGC
                    GTAGCCGCTGA-AGGC }
            ],
            [ 16, 15, 13, 2, 1, 0, 0, 0.1333, ],
        ],

        #               * **    *   ** *   *
        [   [   qw{ GATTATCATCACCCCAGCCACATW
                    GATTTT--TCACTCCATTCGCATA }
            ],
            [ 24, 21, 16, 5, 2, 1, 0, 0.2381, ],
        ],
    );

    for my $i ( 0 .. $#data ) {
        my ( $seq_refs, $except_ref ) = @{ $data[$i] };

        my $result_ref = App::Fasops::Common::multi_seq_stat($seq_refs);
        Test::Number::Delta::delta_ok( $result_ref, $except_ref, "stat $i" );
    }
}

{
    print "#ref_pair_D\n";

    my @data = (

        #
        [   [   qw{ AAAATTTTTG
                    AAAATTTTTG
                    AAAATTTTTG }
            ],
            [ 0, 0, 0, ],
        ],

        #
        [   [   qw{ AAAATTTTGG
                    AAAATTTTGG
                    AAAATTTTTG }
            ],
            [ 0, 0, 0, ],
        ],

        #                   *
        [   [   qw{ AAAATTTTGG
                    AAAATTTTTG
                    AAAATTTTTG }
            ],
            [ 0.1, 0, 0, ],
        ],

        #                   *
        [   [   qw{ AAAATTTTTG
                    AAAATTTTGG
                    AAAATTTTTG }
            ],
            [ 0, 0.1, 0, ],
        ],

        #                   *
        [   [   qw{ AAAATTTTGG
                    AAAATTTTAG
                    AAAATTTTTG }
            ],
            [ 0, 0, 0.1, ],
        ],

        #               *   *
        [   [   qw{ AAAATTTTGG
                    AAAAGTTTTG
                    AAAATTTTTG }
            ],
            [ 0.1, 0.1, 0, ],
        ],

        #            *  *   *
        [   [   qw{ AAAATTTTGG
                    ATAAGTTTTG



( run in 2.298 seconds using v1.01-cache-2.11-cpan-0bb4e1dffa6 )