@@ -81,14 +81,18 @@ def test_filter_on_attributes_1():
81
81
82
82
83
83
def test_filter_on_attributes_without_friendly_name ():
84
- ava = {
"eduPersonTargetedID" :
"[email protected] " ,
"eduPersonAffiliation" :
"test" ,
84
+ ava = {
"eduPersonTargetedID" :
"[email protected] " ,
85
+ "eduPersonAffiliation" : "test" ,
85
86
"extra" : "foo" }
86
87
eptid = to_dict (
87
- Attribute (name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.10" , name_format = NAME_FORMAT_URI ), ONTS )
88
+ Attribute (name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.11" ,
89
+ name_format = NAME_FORMAT_URI ), ONTS )
88
90
ep_affiliation = to_dict (
89
- Attribute (name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.1" , name_format = NAME_FORMAT_URI ), ONTS )
91
+ Attribute (name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.1" ,
92
+ name_format = NAME_FORMAT_URI ), ONTS )
90
93
91
- restricted_ava = filter_on_attributes (ava , required = [eptid ], optional = [ep_affiliation ],
94
+ restricted_ava = filter_on_attributes (ava , required = [eptid ],
95
+ optional = [ep_affiliation ],
92
96
acs = ac_factory ())
93
97
assert restricted_ava == {
"eduPersonTargetedID" :
"[email protected] " ,
94
98
"eduPersonAffiliation" : "test" }
@@ -97,17 +101,19 @@ def test_filter_on_attributes_without_friendly_name():
97
101
def test_filter_on_attributes_with_missing_required_attribute ():
98
102
ava = {"extra" : "foo" }
99
103
eptid = to_dict (Attribute (
100
- friendly_name = "eduPersonTargetedID" , name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.10" ,
101
- name_format = NAME_FORMAT_URI ), ONTS )
104
+ friendly_name = "eduPersonTargetedID" ,
105
+ name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.10" ,
106
+ name_format = NAME_FORMAT_URI ), ONTS )
102
107
with pytest .raises (MissingValue ):
103
108
filter_on_attributes (ava , required = [eptid ])
104
109
105
110
106
111
def test_filter_on_attributes_with_missing_optional_attribute ():
107
112
ava = {"extra" : "foo" }
108
113
eptid = to_dict (Attribute (
109
- friendly_name = "eduPersonTargetedID" , name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.10" ,
110
- name_format = NAME_FORMAT_URI ), ONTS )
114
+ friendly_name = "eduPersonTargetedID" ,
115
+ name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.10" ,
116
+ name_format = NAME_FORMAT_URI ), ONTS )
111
117
assert filter_on_attributes (ava , optional = [eptid ]) == {}
112
118
113
119
@@ -418,9 +424,9 @@ def test_filter_values_req_2():
418
424
419
425
def test_filter_values_req_3 ():
420
426
a = to_dict (
421
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
422
- friendly_name = "serialNumber" ,
423
- attribute_value = [AttributeValue (text = "12345" )]), ONTS )
427
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
428
+ friendly_name = "serialNumber" ,
429
+ attribute_value = [AttributeValue (text = "12345" )]), ONTS )
424
430
425
431
required = [a ]
426
432
ava = {"serialNumber" : ["12345" ]}
@@ -432,9 +438,9 @@ def test_filter_values_req_3():
432
438
433
439
def test_filter_values_req_4 ():
434
440
a = to_dict (
435
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
436
- friendly_name = "serialNumber" ,
437
- attribute_value = [AttributeValue (text = "54321" )]), ONTS )
441
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
442
+ friendly_name = "serialNumber" ,
443
+ attribute_value = [AttributeValue (text = "54321" )]), ONTS )
438
444
439
445
required = [a ]
440
446
ava = {"serialNumber" : ["12345" ]}
@@ -444,9 +450,9 @@ def test_filter_values_req_4():
444
450
445
451
def test_filter_values_req_5 ():
446
452
a = to_dict (
447
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
448
- friendly_name = "serialNumber" ,
449
- attribute_value = [AttributeValue (text = "12345" )]), ONTS )
453
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
454
+ friendly_name = "serialNumber" ,
455
+ attribute_value = [AttributeValue (text = "12345" )]), ONTS )
450
456
451
457
required = [a ]
452
458
ava = {"serialNumber" : ["12345" , "54321" ]}
@@ -458,9 +464,9 @@ def test_filter_values_req_5():
458
464
459
465
def test_filter_values_req_6 ():
460
466
a = to_dict (
461
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
462
- friendly_name = "serialNumber" ,
463
- attribute_value = [AttributeValue (text = "54321" )]), ONTS )
467
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
468
+ friendly_name = "serialNumber" ,
469
+ attribute_value = [AttributeValue (text = "54321" )]), ONTS )
464
470
465
471
required = [a ]
466
472
ava = {"serialNumber" : ["12345" , "54321" ]}
@@ -472,13 +478,13 @@ def test_filter_values_req_6():
472
478
473
479
def test_filter_values_req_opt_0 ():
474
480
r = to_dict (
475
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
476
- friendly_name = "serialNumber" ,
477
- attribute_value = [AttributeValue (text = "54321" )]), ONTS )
481
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
482
+ friendly_name = "serialNumber" ,
483
+ attribute_value = [AttributeValue (text = "54321" )]), ONTS )
478
484
o = to_dict (
479
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
480
- friendly_name = "serialNumber" ,
481
- attribute_value = [AttributeValue (text = "12345" )]), ONTS )
485
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
486
+ friendly_name = "serialNumber" ,
487
+ attribute_value = [AttributeValue (text = "12345" )]), ONTS )
482
488
483
489
ava = {"serialNumber" : ["12345" , "54321" ]}
484
490
@@ -489,14 +495,14 @@ def test_filter_values_req_opt_0():
489
495
490
496
def test_filter_values_req_opt_1 ():
491
497
r = to_dict (
492
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
493
- friendly_name = "serialNumber" ,
494
- attribute_value = [AttributeValue (text = "54321" )]), ONTS )
498
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
499
+ friendly_name = "serialNumber" ,
500
+ attribute_value = [AttributeValue (text = "54321" )]), ONTS )
495
501
o = to_dict (
496
- Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
497
- friendly_name = "serialNumber" ,
498
- attribute_value = [AttributeValue (text = "12345" ),
499
- AttributeValue (text = "abcd0" )]), ONTS )
502
+ Attribute (name = "urn:oid:2.5.4.5" , name_format = NAME_FORMAT_URI ,
503
+ friendly_name = "serialNumber" ,
504
+ attribute_value = [AttributeValue (text = "12345" ),
505
+ AttributeValue (text = "abcd0" )]), ONTS )
500
506
501
507
ava = {"serialNumber" : ["12345" , "54321" ]}
502
508
@@ -508,30 +514,30 @@ def test_filter_values_req_opt_1():
508
514
def test_filter_values_req_opt_2 ():
509
515
r = [
510
516
to_dict (
511
- Attribute (
512
- friendly_name = "surName" ,
513
- name = "urn:oid:2.5.4.4" ,
514
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
515
- ONTS ),
517
+ Attribute (
518
+ friendly_name = "surName" ,
519
+ name = "urn:oid:2.5.4.4" ,
520
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
521
+ ONTS ),
516
522
to_dict (
517
- Attribute (
518
- friendly_name = "givenName" ,
519
- name = "urn:oid:2.5.4.42" ,
520
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
521
- ONTS ),
523
+ Attribute (
524
+ friendly_name = "givenName" ,
525
+ name = "urn:oid:2.5.4.42" ,
526
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
527
+ ONTS ),
522
528
to_dict (
523
- Attribute (
524
- friendly_name = "mail" ,
525
- name = "urn:oid:0.9.2342.19200300.100.1.3" ,
526
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
527
- ONTS )]
529
+ Attribute (
530
+ friendly_name = "mail" ,
531
+ name = "urn:oid:0.9.2342.19200300.100.1.3" ,
532
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
533
+ ONTS )]
528
534
o = [
529
535
to_dict (
530
- Attribute (
531
- friendly_name = "title" ,
532
- name = "urn:oid:2.5.4.12" ,
533
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
534
- ONTS )]
536
+ Attribute (
537
+ friendly_name = "title" ,
538
+ name = "urn:oid:2.5.4.12" ,
539
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
540
+ ONTS )]
535
541
536
542
ava = {"surname" : ["Hedberg" ], "givenName" : ["Roland" ],
537
543
"eduPersonAffiliation" : ["staff" ], "uid" : ["rohe0002" ]}
@@ -545,18 +551,18 @@ def test_filter_values_req_opt_2():
545
551
def test_filter_values_req_opt_4 ():
546
552
r = [
547
553
Attribute (
548
- friendly_name = "surName" ,
549
- name = "urn:oid:2.5.4.4" ,
550
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
554
+ friendly_name = "surName" ,
555
+ name = "urn:oid:2.5.4.4" ,
556
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
551
557
Attribute (
552
- friendly_name = "givenName" ,
553
- name = "urn:oid:2.5.4.42" ,
554
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
558
+ friendly_name = "givenName" ,
559
+ name = "urn:oid:2.5.4.42" ,
560
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
555
561
o = [
556
562
Attribute (
557
- friendly_name = "title" ,
558
- name = "urn:oid:2.5.4.12" ,
559
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
563
+ friendly_name = "title" ,
564
+ name = "urn:oid:2.5.4.12" ,
565
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
560
566
561
567
acs = attribute_converter .ac_factory (full_path ("attributemaps" ))
562
568
@@ -577,15 +583,15 @@ def test_filter_values_req_opt_4():
577
583
578
584
def test_filter_ava_0 ():
579
585
policy = Policy (
580
- {
581
- "default" : {
582
- "lifetime" : {"minutes" : 15 },
583
- "attribute_restrictions" : None # means all I have
584
- },
585
- "urn:mace:example.com:saml:roland:sp" : {
586
- "lifetime" : {"minutes" : 5 },
587
- }
586
+ {
587
+ "default" : {
588
+ "lifetime" : {"minutes" : 15 },
589
+ "attribute_restrictions" : None # means all I have
590
+ },
591
+ "urn:mace:example.com:saml:roland:sp" : {
592
+ "lifetime" : {"minutes" : 5 },
588
593
}
594
+ }
589
595
)
590
596
591
597
ava = {"givenName" : ["Derek" ], "surName" : ["Jeter" ],
@@ -701,30 +707,30 @@ def test_filter_ava_4():
701
707
def test_req_opt ():
702
708
req = [
703
709
to_dict (
704
- md .RequestedAttribute (
705
- friendly_name = "surname" , name = "urn:oid:2.5.4.4" ,
706
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
707
- is_required = "true" ), ONTS ),
710
+ md .RequestedAttribute (
711
+ friendly_name = "surname" , name = "urn:oid:2.5.4.4" ,
712
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
713
+ is_required = "true" ), ONTS ),
708
714
to_dict (
709
- md .RequestedAttribute (
710
- friendly_name = "givenname" ,
711
- name = "urn:oid:2.5.4.42" ,
712
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
713
- is_required = "true" ), ONTS ),
715
+ md .RequestedAttribute (
716
+ friendly_name = "givenname" ,
717
+ name = "urn:oid:2.5.4.42" ,
718
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
719
+ is_required = "true" ), ONTS ),
714
720
to_dict (
715
- md .RequestedAttribute (
716
- friendly_name = "edupersonaffiliation" ,
717
- name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.1" ,
718
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
719
- is_required = "true" ), ONTS )]
721
+ md .RequestedAttribute (
722
+ friendly_name = "edupersonaffiliation" ,
723
+ name = "urn:oid:1.3.6.1.4.1.5923.1.1.1.1" ,
724
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
725
+ is_required = "true" ), ONTS )]
720
726
721
727
opt = [
722
728
to_dict (
723
- md .RequestedAttribute (
724
- friendly_name = "title" ,
725
- name = "urn:oid:2.5.4.12" ,
726
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
727
- is_required = "false" ), ONTS )]
729
+ md .RequestedAttribute (
730
+ friendly_name = "title" ,
731
+ name = "urn:oid:2.5.4.12" ,
732
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ,
733
+ is_required = "false" ), ONTS )]
728
734
729
735
policy = Policy ()
730
736
ava = {'givenname' : 'Roland' , 'surname' : 'Hedberg' ,
@@ -738,18 +744,18 @@ def test_req_opt():
738
744
def test_filter_on_wire_representation_1 ():
739
745
r = [
740
746
Attribute (
741
- friendly_name = "surName" ,
742
- name = "urn:oid:2.5.4.4" ,
743
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
747
+ friendly_name = "surName" ,
748
+ name = "urn:oid:2.5.4.4" ,
749
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
744
750
Attribute (
745
- friendly_name = "givenName" ,
746
- name = "urn:oid:2.5.4.42" ,
747
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
751
+ friendly_name = "givenName" ,
752
+ name = "urn:oid:2.5.4.42" ,
753
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
748
754
o = [
749
755
Attribute (
750
- friendly_name = "title" ,
751
- name = "urn:oid:2.5.4.12" ,
752
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
756
+ friendly_name = "title" ,
757
+ name = "urn:oid:2.5.4.12" ,
758
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
753
759
754
760
acs = attribute_converter .ac_factory (full_path ("attributemaps" ))
755
761
@@ -763,18 +769,18 @@ def test_filter_on_wire_representation_1():
763
769
def test_filter_on_wire_representation_2 ():
764
770
r = [
765
771
Attribute (
766
- friendly_name = "surName" ,
767
- name = "urn:oid:2.5.4.4" ,
768
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
772
+ friendly_name = "surName" ,
773
+ name = "urn:oid:2.5.4.4" ,
774
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" ),
769
775
Attribute (
770
- friendly_name = "givenName" ,
771
- name = "urn:oid:2.5.4.42" ,
772
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
776
+ friendly_name = "givenName" ,
777
+ name = "urn:oid:2.5.4.42" ,
778
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
773
779
o = [
774
780
Attribute (
775
- friendly_name = "title" ,
776
- name = "urn:oid:2.5.4.12" ,
777
- name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
781
+ friendly_name = "title" ,
782
+ name = "urn:oid:2.5.4.12" ,
783
+ name_format = "urn:oasis:names:tc:SAML:2.0:attrname-format:uri" )]
778
784
779
785
acs = attribute_converter .ac_factory (full_path ("attributemaps" ))
780
786
0 commit comments