[BACK]Return to network_tests.t CVS log [TXT][DIR] Up to [local] / HOPE / Net-OpenAMD / t

Diff for /HOPE/Net-OpenAMD/t/network_tests.t between version 1.5 and 1.8

version 1.5, 2010/06/28 21:40:38 version 1.8, 2010/07/13 01:14:43
Line 1 
Line 1 
 #!perl  #!perl
 package NetworkTests;  package NetworkTests;
   
 # $AFresh1: network_tests.t,v 1.4 2010/06/27 00:52:33 andrew Exp $  # $AFresh1: network_tests.t,v 1.7 2010/06/30 18:04:20 andrew Exp $
   
 use strict;  use strict;
 use warnings;  use warnings;
   
 use Test::More;  use Test::More;
 use Net::OpenAMD;  use Net::OpenAMD;
   use Data::Dumper;
   
 if ( !caller() ) {  if ( !caller() ) {
     if ( $ENV{'NETWORK_TESTS'} ) {      if ( $ENV{'NETWORK_TESTS'} ) {
           plan tests => 13;
         # plan tests => ??;  
     }      }
     else {      else {
         plan skip_all => 'Network test.  Set $ENV{NETWORK_TESTS} to a true value to run.';          plan skip_all =>
               'Network test.  Set $ENV{NETWORK_TESTS} to a true value to run.';
     }      }
   
     my $amd = Net::OpenAMD->new();  
     run_tests($amd);  
   
     done_testing();  
 }  
   
 1;  
   
 sub run_tests {  
     my ($amd) = @_;  
   
     my %tests = (      my %tests = (
         location => [          location => [
             {   args   => undef,              {   args   => undef,
                 expect => [                  expect => [
                     {   'y'      => '83.1452331542969',                      {   'y'    => '43.4861220266',
                         'area'   => 'Engressia',                          'user' => 'user6',
                         'time'   => 2387,                          'x'    => '18.2468971683'
                         'user'   => 12983,                      },
                         'x'      => '46.7369918823242',                      {   'y'    => '36.5212503999',
                         'button' => 'False'                          'user' => 'user7',
                           'x'    => '27.138154414'
                       },
                       {   'y'    => '45.4561205517',
                           'user' => 'user4',
                           'x'    => '43.2247016461'
                       },
                       {   'y'    => '33.3876312219',
                           'user' => 'user5',
                           'x'    => '1.88999914202'
                       },
                       {   'y'    => '6.24512871596',
                           'user' => 'user2',
                           'x'    => '19.3851425782'
                       },
                       {   'y'    => '11.5686903901',
                           'user' => 'user3',
                           'x'    => '37.0118334017'
                       },
                       {   'y'    => '39.6231665024',
                           'user' => 'user0',
                           'x'    => '4.80925926012'
                       },
                       {   'y'    => '30.0999230116',
                           'user' => 'user1',
                           'x'    => '1.48091119245'
                       },
                       {   'y'    => '44.0085836003',
                           'user' => 'user8',
                           'x'    => '15.5482823414'
                       },
                       {   'y'    => '35.8354729961',
                           'user' => 'user9',
                           'x'    => '1.3539559599'
                       },
                       {   'y'    => '23.0220504783',
                           'user' => 'user10',
                           'x'    => '16.5797941904'
                       },
                       {   'y'    => '18.1245161319',
                           'user' => 'user11',
                           'x'    => '39.2951848533'
                       },
                       {   'y'    => '11.3998081612',
                           'user' => 'user12',
                           'x'    => '3.99920632586'
                       },
                       {   'y'    => '13.1865736157',
                           'user' => 'user13',
                           'x'    => '20.5159017473'
                       },
                       {   'y'    => '17.742550877',
                           'user' => 'user14',
                           'x'    => '4.55691655225'
                       },
                       {   'y'    => '18.7671525659',
                           'user' => 'user15',
                           'x'    => '0.262498111169'
                       },
                       {   'y'    => '44.2762837418',
                           'user' => 'user16',
                           'x'    => '35.5124464395'
                       },
                       {   'y'    => '36.5340075619',
                           'user' => 'user17',
                           'x'    => '9.14220464394'
                       },
                       {   'y'    => '29.2264569149',
                           'user' => 'user18',
                           'x'    => '3.47406301583'
                       },
                       {   'y'    => '1.68159309609',
                           'user' => 'user19',
                           'x'    => '1.41024785197'
                     }                      }
                 ],                  ],
             },              },
               {   args   => [ user => 'user0' ],
                   expect => [],
               },
         ],          ],
         speakers => [          speakers => [
             {   args   => undef,              {   args   => undef,
                 expect => [                  expect => [
                     {   'name' => 'Johnny',                      [   '9000',
                         'bio'  => 'Johnny\'s bio'                          {   'name' => 'The Cheshire Catalyst',
                     },                              'bio'  => 'Jacob\'s bio'
                           }
                       ],
                       [   'user0',
                           {   'name' => 'Jacob',
                               'bio'  => 'Jacob\'s bio'
                           }
                       ],
                       [   'user1',
                           {   'name' => 'Emma',
                               'bio'  => 'Emma\'s bio'
                           }
                       ],
                       [   'user10',
                           {   'name' => 'Alexander',
                               'bio'  => 'Alexander\'s bio'
                           }
                       ],
                       [   'user11',
                           {   'name' => 'Olivia',
                               'bio'  => 'Olivia\'s bio'
                           }
                       ],
                       [   'user12',
                           {   'name' => 'Anthony',
                               'bio'  => 'Anthony\'s bio'
                           }
                       ],
                       [   'user13',
                           {   'name' => 'Sophia',
                               'bio'  => 'Sophia\'s bio'
                           }
                       ],
                       [   'user14',
                           {   'name' => 'William',
                               'bio'  => 'William\'s bio'
                           }
                       ],
                       [   'user15',
                           {   'name' => 'Abigail',
                               'bio'  => 'Abigail\'s bio'
                           }
                       ],
                       [   'user16',
                           {   'name' => 'Christopher',
                               'bio'  => 'Christopher\'s bio'
                           }
                       ],
                       [   'user17',
                           {   'name' => 'Elizabeth',
                               'bio'  => 'Elizabeth\'s bio'
                           }
                       ],
                       [   'user18',
                           {   'name' => 'Matthew',
                               'bio'  => 'Matthew\'s bio'
                           }
                       ],
                       [   'user19',
                           {   'name' => 'Chloe',
                               'bio'  => 'Chloe\'s bio'
                           }
                       ],
                       [   'user2',
                           {   'name' => 'Michael',
                               'bio'  => 'Michael\'s bio'
                           }
                       ],
                       [   'user3',
                           {   'name' => 'Isabella',
                               'bio'  => 'Isabella\'s bio'
                           }
                       ],
                       [   'user4',
                           {   'name' => 'Ethan',
                               'bio'  => 'Ethan\'s bio'
                           }
                       ],
                       [   'user5',
                           {   'name' => 'Emily',
                               'bio'  => 'Emily\'s bio'
                           }
                       ],
                       [   'user6',
                           {   'name' => 'Joshua',
                               'bio'  => 'Joshua\'s bio'
                           }
                       ],
                       [   'user7',
                           {   'name' => 'Madison',
                               'bio'  => 'Madison\'s bio'
                           }
                       ],
                       [   'user8',
                           {   'name' => 'Daniel',
                               'bio'  => 'Daniel\'s bio'
                           }
                       ],
                       [   'user9',
                           {   'name' => 'Ava',
                               'bio'  => 'Ava\'s bio'
                           },
                       ],
                 ],                  ],
             },              },
         ],          ],
         talks => [          talks => [
             {   args   => undef,              {   args   => undef,
                 expect => [                  expect => [
                     {   'speakers'  => [ 'Judas', 'JohnnyX' ],                      [   'Hacking Democracy: An In Depth Analysis of the ES&S Voting Systems',
                         'interests' => [ 'media', 'crypto' ],                          {   'speakers' =>
                         'time'      => '2008/7/18 13:00:00',                                  '["Matt Blaze", "Sandy Clark", "Eric Cronin", "Gaurav Shah", "Micah Sherr", "Adam Aviv", "Pavol Cerny"]',
                         'track'     => 'Hooper',                              'interests' => '["crypto", "telephones"]',
                         'title' => 'Ancient Egyptian Music and DRM',                              'time'      => '2008/07/14 13:00:00',
                         'abstract' =>                              'track'     => 'Hooper',
                             'A discussion of the development of musical notation, which was designed as a means of reproducing music while making it impossible for the general public to perform without permission.'                              'abstract'  => '
                     }                                       This talk will outline the U. Penn team\'s findings, which included
                                        the discovery of exploitable security vulnerabilities in almost every
                                        hardware and software component of the ES&S touch-screen and optical
                                        scan systems.
                                        ',
                               'title' =>
                                   'Hacking Democracy: An In Depth Analysis of the ES&S Voting Systems',
                           },
                       ],
                 ],                  ],
             },              },
         ],          ],
         interests => [          interests => [
             {   args   => undef,              {   args   => undef,
                 expect => [                  expect => [
                     'new tech',           'activism',                      'new tech',
                     'radio',              'lockpicking',                      'activism',
                     'crypto',             'privacy',                      'radio',
                     'ethics',             'telephones',                      'lockpicking',
                     'social engineering', 'hacker spaces',                      'crypto',
                     'hardware hacking',   'nostalgia',                      'privacy',
                     'communities',        'science',                      'ethics',
                     'government',         'network security',                      'telephones',
                     'malicious software', 'pen testing',                      'social engineering',
                     'web',                'niche hacks',                      'hacker spaces',
                       'hardware hacking',
                       'nostalgia',
                       'communities',
                       'science',
                       'government',
                       'network security',
                       'malicious software',
                       'pen testing',
                       'web',
                       'niche hacks',
                     'media',                      'media',
                 ],                  ],
             },              },
         ],          ],
         users => [          users => [
             {   args   => undef,              {   args   => undef,
                 expect => [                  expect => [],
                     {   'name'      => 'JohnnyX',  
                         'x'         => '32.54091324',  
                         'y'         => '54.10958384',  
                         'interests' => [  
                             'new tech',           'radio',  
                             'lockpicking',        'crypto',  
                             'telephones',         'social engineering',  
                             'hacker spaces',      'hardware hacking',  
                             'nostalgia',          'communities',  
                             'science',            'network security',  
                             'malicious software', 'pen testing'  
                         ],  
                     }  
                 ]  
             },              },
         ],          ],
         stats => [          stats => [
Line 109 
Line 281 
         ],          ],
     );      );
   
     foreach my $method ( keys %tests ) {      my $amd
         foreach my $test ( @{ $tests{$method} } ) {          = Net::OpenAMD->new( { base_uri => 'http://api.hope.net/api/', } );
       run_tests( $amd, \%tests );
   
       #done_testing();
   }
   
   1;
   
   sub run_tests {
       my ( $amd, $tests ) = @_;
   
       foreach my $method ( keys %{$tests} ) {
           foreach my $test ( @{ $tests->{$method} } ) {
             no warnings 'uninitialized';              no warnings 'uninitialized';
             my $result;              my $result;
             eval { $result = $amd->$method( $test->{args} ) };              eval { $result = $amd->$method( $test->{args} ) };
Line 119 
Line 303 
             }              }
             elsif ( ref $test->{expect} ) {              elsif ( ref $test->{expect} ) {
                 is( $@, '', "AMD->$method($test->{args})" );                  is( $@, '', "AMD->$method($test->{args})" );
                 is_deeply( $result, $test->{expect}, 'got expected result' );                  is_deeply( $result, $test->{expect},
                             "AMD->$method($test->{args}) - "
                           . 'got expected result' );
             }              }
             else {              else {
                 is( $@, $test->{expect}, "AMD->$method($test->{args})" );                  is( $@, $test->{expect}, "AMD->$method($test->{args})" );

Legend:
Removed from v.1.5  
changed lines
  Added in v.1.8

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>