@@ -405,6 +405,71 @@ public function testGetNameIdData()
405
405
} catch (OneLogin_Saml2_ValidationError $ e ) {
406
406
$ this ->assertContains ('An empty NameID value found ' , $ e ->getMessage ());
407
407
}
408
+
409
+ $ xml7 = file_get_contents (TEST_ROOT . '/data/responses/invalids/no_value_nameid.xml.base64 ' );
410
+ $ response11 = new OneLogin_Saml2_Response ($ this ->_settings , $ xml7 );
411
+ $ nameIdData12 = $ response11 ->getNameIdData ();
412
+ $ expectedNameIdData10 = array (
413
+ 'Value ' => "" ,
414
+ 'Format ' => "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress "
415
+ );
416
+ $ this ->assertEquals ($ expectedNameIdData10 , $ nameIdData12 );
417
+
418
+ $ settingsDir = TEST_ROOT .'/settings/ ' ;
419
+ include $ settingsDir .'settings1.php ' ;
420
+
421
+ $ settingsInfo ['strict ' ] = true ;
422
+ $ settingsInfo ['security ' ]['wantNameId ' ] = true ;
423
+
424
+ $ settings = new OneLogin_Saml2_Settings ($ settingsInfo );
425
+ $ response12 = new OneLogin_Saml2_Response ($ settings , $ xml7 );
426
+
427
+ try {
428
+ $ nameIdData13 = $ response12 ->getNameIdData ();
429
+ $ this ->fail ('OneLogin_Saml2_ValidationError was not raised ' );
430
+ } catch (OneLogin_Saml2_ValidationError $ e ) {
431
+ $ this ->assertContains ('An empty NameID value found ' , $ e ->getMessage ());
432
+ }
433
+
434
+ $ settingsInfo ['security ' ]['wantNameId ' ] = false ;
435
+
436
+ $ settings = new OneLogin_Saml2_Settings ($ settingsInfo );
437
+ $ response13 = new OneLogin_Saml2_Response ($ settings , $ xml7 );
438
+
439
+ $ nameIdData14 = $ response13 ->getNameIdData ();
440
+
441
+ $ expectedNameIdData11 = array (
442
+ 'Value ' => "" ,
443
+ 'Format ' => "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress "
444
+ );
445
+ $ this ->assertEquals ($ expectedNameIdData11 , $ nameIdData14 );
446
+
447
+ $ settingsInfo ['strict ' ] = false ;
448
+ $ settingsInfo ['security ' ]['wantNameId ' ] = true ;
449
+
450
+ $ settings = new OneLogin_Saml2_Settings ($ settingsInfo );
451
+ $ response14 = new OneLogin_Saml2_Response ($ settings , $ xml7 );
452
+
453
+ $ nameIdData15 = $ response14 ->getNameIdData ();
454
+
455
+ $ expectedNameIdData12 = array (
456
+ 'Value ' => "" ,
457
+ 'Format ' => "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress "
458
+ );
459
+ $ this ->assertEquals ($ expectedNameIdData12 , $ nameIdData15 );
460
+
461
+ $ settingsInfo ['security ' ]['wantNameId ' ] = false ;
462
+
463
+ $ settings = new OneLogin_Saml2_Settings ($ settingsInfo );
464
+ $ response15 = new OneLogin_Saml2_Response ($ settings , $ xml7 );
465
+
466
+ $ nameIdData16 = $ response15 ->getNameIdData ();
467
+
468
+ $ expectedNameIdData13 = array (
469
+ 'Value ' => "" ,
470
+ 'Format ' => "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress "
471
+ );
472
+ $ this ->assertEquals ($ expectedNameIdData13 , $ nameIdData16 );
408
473
}
409
474
410
475
/**
0 commit comments