view mod_lib_ldap/dev/t/00-login.t @ 4700:f821eeac0e50

mod_pastebin: Fix pasting when <body> is not the first tag (thanks thorsten) Introduced in ded630a87563 stanza:get_child() and :get_child_text() operates on the first child when no name or namespace is given. If it so happens that the first child is an <thread/> instead of <body> then it calculates the line length against that instead of the body. Apparently in the vast majority of clients the <body> is first, so this issue was not noticed until now.
author Kim Alvefur <zash@zash.se>
date Wed, 29 Sep 2021 13:39:59 +0200
parents 512e31cd8b70
children
line wrap: on
line source

use strict;
use warnings;
use lib 't';

use TestConnection;
use Test::More;

my @users = (
    'one',
    'two',
    'three',
    'four',
    'five',
    'six',
);

plan tests => scalar(@users) + 3;

foreach my $username (@users) {
    my $conn = TestConnection->new($username);

    $conn->reg_cb(session_ready => sub {
        $conn->cond->send;
    });

    my $error = $conn->cond->recv;
    ok(! $error) or diag("$username login failed: $error");
}

do {
    my $conn = TestConnection->new('one', password => '23451');

    $conn->reg_cb(session_ready => sub {
        $conn->cond->send;
    });

    my $error = $conn->cond->recv;
    ok($error);
};

do {
    my $conn = TestConnection->new('invalid', password => '12345');

    $conn->reg_cb(session_ready => sub {
        $conn->cond->send;
    });

    my $error = $conn->cond->recv;
    ok($error);
};

do {
    my $conn = TestConnection->new('seven', password => '1234567');

    $conn->reg_cb(session_ready => sub {
        $conn->cond->send;
    });

    my $error = $conn->cond->recv;
    ok($error);
};