@@ -715,201 +715,6 @@ def MockSystemLog(self, message, priority):
715
715
EXPECTED_CONTENT_V3 = EXPECTED_CERT_CONTENT_V3 + os .linesep + EXPECTED_KEY_CONTENT_V3
716
716
717
717
718
- class ExtractorStub (managerlib .ImportFileExtractor ):
719
- def __init__ (self , content , file_path = "test/file/path" ):
720
- self .content = content
721
- self .writes = []
722
- managerlib .ImportFileExtractor .__init__ (self , file_path )
723
-
724
- # Stub out any file system access
725
- def _read (self , file_path ):
726
- return self .content
727
-
728
- def _write_file (self , target , content ):
729
- self .writes .append ((target , content ))
730
-
731
- def _ensure_entitlement_dir_exists (self ):
732
- # Do nothing but stub out the dir check to avoid file system access.
733
- pass
734
-
735
-
736
- class TestImportFileExtractor (unittest .TestCase ):
737
- def test_contains_key_content_when_key_and_cert_exists_in_import_file (self ):
738
- extractor = ExtractorStub (EXPECTED_CONTENT )
739
- self .assertTrue (extractor .contains_key_content ())
740
-
741
- def test_contains_key_content_when_key_and_cert_exists_in_import_file_v3 (self ):
742
- extractor = ExtractorStub (EXPECTED_CONTENT_V3 )
743
- self .assertTrue (extractor .contains_key_content ())
744
-
745
- def test_does_not_contain_key_when_key_does_not_exist_in_import_file (self ):
746
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT )
747
- self .assertFalse (extractor .contains_key_content ())
748
-
749
- def test_does_not_contain_key_when_key_does_not_exist_in_import_file_v3 (self ):
750
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT_V3 )
751
- self .assertFalse (extractor .contains_key_content ())
752
-
753
- def test_get_key_content_when_key_exists (self ):
754
- extractor = ExtractorStub (EXPECTED_CONTENT , file_path = "12345.pem" )
755
- self .assertTrue (extractor .contains_key_content ())
756
- self .assertEqual (EXPECTED_KEY_CONTENT , extractor .get_key_content ())
757
-
758
- def test_get_key_content_when_key_exists_v3 (self ):
759
- extractor = ExtractorStub (EXPECTED_CONTENT_V3 , file_path = "12345.pem" )
760
- self .assertTrue (extractor .contains_key_content ())
761
- self .assertEqual (EXPECTED_KEY_CONTENT_V3 , extractor .get_key_content ())
762
-
763
- def test_get_key_content_returns_None_when_key_does_not_exist (self ):
764
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT , file_path = "12345.pem" )
765
- self .assertFalse (extractor .get_key_content ())
766
-
767
- def test_get_key_content_returns_None_when_key_does_not_exist_v3 (self ):
768
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT_V3 , file_path = "12345.pem" )
769
- self .assertFalse (extractor .get_key_content ())
770
-
771
- def test_get_cert_content (self ):
772
- extractor = ExtractorStub (EXPECTED_CONTENT , file_path = "12345.pem" )
773
- self .assertTrue (extractor .contains_key_content ())
774
- self .assertEqual (EXPECTED_CERT_CONTENT , extractor .get_cert_content ())
775
-
776
- def test_get_cert_content_v3 (self ):
777
- extractor = ExtractorStub (EXPECTED_CONTENT_V3 , file_path = "12345.pem" )
778
- self .assertTrue (extractor .contains_key_content ())
779
- self .assertEqual (EXPECTED_CERT_CONTENT_V3 , extractor .get_cert_content ())
780
-
781
- def test_get_cert_content_returns_None_when_cert_does_not_exist (self ):
782
- extractor = ExtractorStub (EXPECTED_KEY_CONTENT , file_path = "12345.pem" )
783
- self .assertFalse (extractor .get_cert_content ())
784
-
785
- def test_get_cert_content_returns_None_when_cert_does_not_exist_v3 (self ):
786
- extractor = ExtractorStub (EXPECTED_KEY_CONTENT_V3 , file_path = "12345.pem" )
787
- self .assertFalse (extractor .get_cert_content ())
788
-
789
- def test_verify_valid_entitlement_for_invalid_cert (self ):
790
- extractor = ExtractorStub (EXPECTED_KEY_CONTENT , file_path = "12345.pem" )
791
- self .assertFalse (extractor .verify_valid_entitlement ())
792
-
793
- def test_verify_valid_entitlement_for_invalid_cert_v3 (self ):
794
- extractor = ExtractorStub (EXPECTED_KEY_CONTENT_V3 , file_path = "12345.pem" )
795
- self .assertFalse (extractor .verify_valid_entitlement ())
796
-
797
- def test_verify_valid_entitlement_for_invalid_cert_bundle (self ):
798
- # Use a bundle of cert + key, but the cert is not an entitlement cert:
799
- extractor = ExtractorStub (IDENTITY_CERT_WITH_KEY , file_path = "12345.pem" )
800
- self .assertFalse (extractor .verify_valid_entitlement ())
801
-
802
- def test_verify_valid_entitlement_for_no_key (self ):
803
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT , file_path = "12345.pem" )
804
- self .assertFalse (extractor .verify_valid_entitlement ())
805
-
806
- def test_verify_valid_entitlement_for_no_key_v3 (self ):
807
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT_V3 , file_path = "12345.pem" )
808
- self .assertFalse (extractor .verify_valid_entitlement ())
809
-
810
- def test_verify_valid_entitlement_for_no_cert_content (self ):
811
- extractor = ExtractorStub ("" , file_path = "12345.pem" )
812
- self .assertFalse (extractor .verify_valid_entitlement ())
813
-
814
- def test_write_cert_only (self ):
815
- expected_cert_file = "%d.pem" % (EXPECTED_CERT .serial )
816
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT , file_path = expected_cert_file )
817
- extractor .write_to_disk ()
818
-
819
- self .assertEqual (1 , len (extractor .writes ))
820
-
821
- write_one = extractor .writes [0 ]
822
- self .assertEqual (os .path .join (ENT_CONFIG_DIR , expected_cert_file ), write_one [0 ])
823
- self .assertEqual (EXPECTED_CERT_CONTENT , write_one [1 ])
824
-
825
- def test_write_cert_only_v3 (self ):
826
- expected_cert_file = "%d.pem" % (EXPECTED_CERT_V3 .serial )
827
- extractor = ExtractorStub (EXPECTED_CERT_CONTENT_V3 , file_path = expected_cert_file )
828
- extractor .write_to_disk ()
829
-
830
- self .assertEqual (1 , len (extractor .writes ))
831
-
832
- write_one = extractor .writes [0 ]
833
- self .assertEqual (os .path .join (ENT_CONFIG_DIR , expected_cert_file ), write_one [0 ])
834
- self .assertEqual (EXPECTED_CERT_CONTENT_V3 , write_one [1 ])
835
-
836
- def test_write_key_and_cert (self ):
837
- filename = "%d.pem" % (EXPECTED_CERT .serial )
838
- self ._assert_correct_cert_and_key_files_generated_with_filename (filename )
839
-
840
- def test_write_key_and_cert_v3 (self ):
841
- filename = "%d.pem" % (EXPECTED_CERT_V3 .serial )
842
- self ._assert_correct_cert_and_key_files_generated_with_filename_v3 (filename )
843
-
844
- def test_file_renamed_when_imported_with_serial_no_and_custom_extension (self ):
845
- filename = "%d.cert" % (EXPECTED_CERT .serial )
846
- self ._assert_correct_cert_and_key_files_generated_with_filename (filename )
847
-
848
- def test_file_renamed_when_imported_with_serial_no_and_custom_extension_v3 (self ):
849
- filename = "%d.cert" % (EXPECTED_CERT_V3 .serial )
850
- self ._assert_correct_cert_and_key_files_generated_with_filename_v3 (filename )
851
-
852
- def test_file_renamed_when_imported_with_serial_no_and_no_extension (self ):
853
- filename = str (EXPECTED_CERT .serial )
854
- self ._assert_correct_cert_and_key_files_generated_with_filename (filename )
855
-
856
- def test_file_renamed_when_imported_with_serial_no_and_no_extension_v3 (self ):
857
- filename = str (EXPECTED_CERT_V3 .serial )
858
- self ._assert_correct_cert_and_key_files_generated_with_filename_v3 (filename )
859
-
860
- def test_file_renamed_when_imported_with_custom_name_and_pem_extension (self ):
861
- filename = "entitlement.pem"
862
- self ._assert_correct_cert_and_key_files_generated_with_filename (filename )
863
-
864
- def test_file_renamed_when_imported_with_custom_name_and_pem_extension_v3 (self ):
865
- filename = "entitlement.pem"
866
- self ._assert_correct_cert_and_key_files_generated_with_filename_v3 (filename )
867
-
868
- def test_file_renamed_when_imported_with_custom_name_no_extension (self ):
869
- filename = "entitlement"
870
- self ._assert_correct_cert_and_key_files_generated_with_filename (filename )
871
-
872
- def test_file_renamed_when_imported_with_custom_name_no_extension_v3 (self ):
873
- filename = "entitlement"
874
- self ._assert_correct_cert_and_key_files_generated_with_filename_v3 (filename )
875
-
876
- def _assert_correct_cert_and_key_files_generated_with_filename (self , filename ):
877
- expected_file_prefix = "%d" % (EXPECTED_CERT .serial )
878
- expected_cert_file = expected_file_prefix + ".pem"
879
- expected_key_file = expected_file_prefix + "-key.pem"
880
-
881
- extractor = ExtractorStub (EXPECTED_CONTENT , file_path = filename )
882
- extractor .write_to_disk ()
883
-
884
- self .assertEqual (2 , len (extractor .writes ))
885
-
886
- write_one = extractor .writes [0 ]
887
- self .assertEqual (os .path .join (ENT_CONFIG_DIR , expected_cert_file ), write_one [0 ])
888
- self .assertEqual (EXPECTED_CERT_CONTENT , write_one [1 ])
889
-
890
- write_two = extractor .writes [1 ]
891
- self .assertEqual (os .path .join (ENT_CONFIG_DIR , expected_key_file ), write_two [0 ])
892
- self .assertEqual (EXPECTED_KEY_CONTENT , write_two [1 ])
893
-
894
- def _assert_correct_cert_and_key_files_generated_with_filename_v3 (self , filename ):
895
- expected_file_prefix = "%d" % (EXPECTED_CERT_V3 .serial )
896
- expected_cert_file = expected_file_prefix + ".pem"
897
- expected_key_file = expected_file_prefix + "-key.pem"
898
-
899
- extractor = ExtractorStub (EXPECTED_CONTENT_V3 , file_path = filename )
900
- extractor .write_to_disk ()
901
-
902
- self .assertEqual (2 , len (extractor .writes ))
903
-
904
- write_one = extractor .writes [0 ]
905
- self .assertEqual (os .path .join (ENT_CONFIG_DIR , expected_cert_file ), write_one [0 ])
906
- self .assertEqual (EXPECTED_CERT_CONTENT_V3 , write_one [1 ])
907
-
908
- write_two = extractor .writes [1 ]
909
- self .assertEqual (os .path .join (ENT_CONFIG_DIR , expected_key_file ), write_two [0 ])
910
- self .assertEqual (EXPECTED_KEY_CONTENT_V3 , write_two [1 ])
911
-
912
-
913
718
class TestMergedPoolsStackingGroupSorter (unittest .TestCase ):
914
719
def test_sorter_adds_group_for_non_stackable_entitlement (self ):
915
720
pool = self ._create_pool ("test-prod-1" , "Test Prod 1" )
0 commit comments