#*****************************************************************#
  # ALLGEMEIN:                                                      #
  # Funktionstest                                                   #
  #*****************************************************************#
  
  # Modul TEST einbinden

  use Test::More;

  use includedatei;  

  my %STRING = (
                '' => '0',
                'tim@telekom.de\ntom@arcor.de' => '0',
                'snoopy.telecom.de' => '0',
                'hallo@ihr.da' => '1',
                'Goo.gle@msn.com' => '1',
                'Goo@gle@msn.com' => '0',
               );

  # Anzahl der geplanten Test berechnen
  plan tests => (keys %STRING) * 2;

  while( my ($mail, $ok) = each %STRING ) {

    my $var = includedatei->checkmail($mail);

    # Funktion vorhanden ?
    ok( defined $var, "" );

    # korrektes Ergebnis ?
    is( $var,   $ok,  "EMAIL: $mail : $ok" );

  }

  
  #*****************************************************************#
  # Subroutine                                                      #
  #*****************************************************************#  
  
  sub checkmail()
  {
    ($self, $mail) = @_;

    if (
        ($mail !~ /(@.*@)|(\.\.)|(@\.)|(\.@)/)
        &&
        ($mail =~ m/([a-zA-Z0-9\-\.]{1,80})\@([a-zA-Z0-9\-\.]{1,80})\.(\w{2,4})/)
       )
    {
      $ok = 1;
    }
    else {
      $ok = 0;
    }
    return $ok;
  }