@@ -657,92 +657,6 @@ def test_save_organization_validation_fails(
657
657
}
658
658
assert organization_service .update_organization .calls == []
659
659
660
- @pytest .mark .usefixtures ("_enable_organizations" )
661
- def test_save_organization_name (
662
- self ,
663
- db_request ,
664
- pyramid_user ,
665
- organization_service ,
666
- user_service ,
667
- monkeypatch ,
668
- ):
669
- organization = OrganizationFactory .create (name = "foobar" )
670
- db_request .POST = {
671
- "confirm_current_organization_name" : organization .name ,
672
- "name" : "FooBar" ,
673
- }
674
- db_request .route_path = pretend .call_recorder (
675
- lambda * a , organization_name , ** kw : (
676
- f"/manage/organization/{ organization_name } /settings/"
677
- )
678
- )
679
-
680
- def rename_organization (organization_id , organization_name ):
681
- organization .name = organization_name
682
-
683
- monkeypatch .setattr (
684
- organization_service ,
685
- "rename_organization" ,
686
- pretend .call_recorder (rename_organization ),
687
- )
688
-
689
- admin = None
690
- monkeypatch .setattr (
691
- user_service ,
692
- "get_admin_user" ,
693
- pretend .call_recorder (lambda * a , ** kw : admin ),
694
- )
695
-
696
- save_organization_obj = pretend .stub ()
697
- save_organization_cls = pretend .call_recorder (
698
- lambda * a , ** kw : save_organization_obj
699
- )
700
- monkeypatch .setattr (org_views , "SaveOrganizationForm" , save_organization_cls )
701
-
702
- save_organization_name_obj = pretend .stub (
703
- validate = lambda : True , name = pretend .stub (data = db_request .POST ["name" ])
704
- )
705
- save_organization_name_cls = pretend .call_recorder (
706
- lambda * a , ** kw : save_organization_name_obj
707
- )
708
- monkeypatch .setattr (
709
- org_views , "SaveOrganizationNameForm" , save_organization_name_cls
710
- )
711
-
712
- send_email = pretend .call_recorder (lambda * a , ** kw : None )
713
- monkeypatch .setattr (
714
- org_views , "send_admin_organization_renamed_email" , send_email
715
- )
716
- monkeypatch .setattr (org_views , "send_organization_renamed_email" , send_email )
717
- monkeypatch .setattr (
718
- org_views , "organization_owners" , lambda * a , ** kw : [pyramid_user ]
719
- )
720
-
721
- view = org_views .ManageOrganizationSettingsViews (organization , db_request )
722
- result = view .save_organization_name ()
723
-
724
- assert isinstance (result , HTTPSeeOther )
725
- assert result .headers ["Location" ] == (
726
- f"/manage/organization/{ organization .normalized_name } /settings/#modal-close"
727
- )
728
- assert organization_service .rename_organization .calls == [
729
- pretend .call (organization .id , "FooBar" )
730
- ]
731
- assert send_email .calls == [
732
- pretend .call (
733
- db_request ,
734
- admin ,
735
- organization_name = "FooBar" ,
736
- previous_organization_name = "foobar" ,
737
- ),
738
- pretend .call (
739
- db_request ,
740
- {pyramid_user },
741
- organization_name = "FooBar" ,
742
- previous_organization_name = "foobar" ,
743
- ),
744
- ]
745
-
746
660
@pytest .mark .usefixtures ("_enable_organizations" )
747
661
def test_save_organization_name_wrong_confirm (
748
662
self , db_request , organization_service , monkeypatch
@@ -772,15 +686,24 @@ def test_save_organization_name_wrong_confirm(
772
686
]
773
687
774
688
@pytest .mark .usefixtures ("_enable_organizations" )
775
- def test_save_organization_name_validation_fails (
776
- self , db_request , organization_service , monkeypatch
689
+ def test_disable_save_organization_name (
690
+ self ,
691
+ db_request ,
692
+ pyramid_user ,
693
+ organization_service ,
694
+ user_service ,
695
+ monkeypatch ,
777
696
):
778
697
organization = OrganizationFactory .create (name = "foobar" )
779
698
db_request .POST = {
780
699
"confirm_current_organization_name" : organization .name ,
781
700
"name" : "FooBar" ,
782
701
}
783
- db_request .user = pretend .stub ()
702
+ db_request .route_path = pretend .call_recorder (
703
+ lambda * a , organization_name , ** kw : (
704
+ f"/manage/organization/{ organization_name } /settings/"
705
+ )
706
+ )
784
707
785
708
def rename_organization (organization_id , organization_name ):
786
709
organization .name = organization_name
@@ -791,14 +714,21 @@ def rename_organization(organization_id, organization_name):
791
714
pretend .call_recorder (rename_organization ),
792
715
)
793
716
717
+ admin = None
718
+ monkeypatch .setattr (
719
+ user_service ,
720
+ "get_admin_user" ,
721
+ pretend .call_recorder (lambda * a , ** kw : admin ),
722
+ )
723
+
794
724
save_organization_obj = pretend .stub ()
795
725
save_organization_cls = pretend .call_recorder (
796
726
lambda * a , ** kw : save_organization_obj
797
727
)
798
728
monkeypatch .setattr (org_views , "SaveOrganizationForm" , save_organization_cls )
799
729
800
730
save_organization_name_obj = pretend .stub (
801
- validate = lambda : False , errors = pretend .stub (values = lambda : [ "Invalid " ])
731
+ validate = lambda : True , name = pretend .stub (data = db_request . POST [ "name " ])
802
732
)
803
733
save_organization_name_cls = pretend .call_recorder (
804
734
lambda * a , ** kw : save_organization_name_obj
@@ -807,14 +737,149 @@ def rename_organization(organization_id, organization_name):
807
737
org_views , "SaveOrganizationNameForm" , save_organization_name_cls
808
738
)
809
739
740
+ send_email = pretend .call_recorder (lambda * a , ** kw : None )
741
+
810
742
view = org_views .ManageOrganizationSettingsViews (organization , db_request )
811
743
result = view .save_organization_name ()
812
744
813
- assert result == {
814
- ** view . default_response ,
815
- "save_organization_name_form" : save_organization_name_obj ,
816
- }
745
+ assert isinstance ( result , HTTPSeeOther )
746
+ assert result . headers [ "Location" ] == (
747
+ f"/manage/organization/ { organization . normalized_name } /settings/"
748
+ )
817
749
assert organization_service .rename_organization .calls == []
750
+ assert send_email .calls == []
751
+
752
+ # When support for renaming orgs is re-introduced
753
+ # @pytest.mark.usefixtures("_enable_organizations")
754
+ # def test_save_organization_name(
755
+ # self,
756
+ # db_request,
757
+ # pyramid_user,
758
+ # organization_service,
759
+ # user_service,
760
+ # monkeypatch,
761
+ # ):
762
+ # organization = OrganizationFactory.create(name="foobar")
763
+ # db_request.POST = {
764
+ # "confirm_current_organization_name": organization.name,
765
+ # "name": "FooBar",
766
+ # }
767
+ # db_request.route_path = pretend.call_recorder(
768
+ # lambda *a, organization_name, **kw: (
769
+ # f"/manage/organization/{organization_name}/settings/"
770
+ # )
771
+ # )
772
+
773
+ # def rename_organization(organization_id, organization_name):
774
+ # organization.name = organization_name
775
+
776
+ # monkeypatch.setattr(
777
+ # organization_service,
778
+ # "rename_organization",
779
+ # pretend.call_recorder(rename_organization),
780
+ # )
781
+
782
+ # admin = None
783
+ # monkeypatch.setattr(
784
+ # user_service,
785
+ # "get_admin_user",
786
+ # pretend.call_recorder(lambda *a, **kw: admin),
787
+ # )
788
+
789
+ # save_organization_obj = pretend.stub()
790
+ # save_organization_cls = pretend.call_recorder(
791
+ # lambda *a, **kw: save_organization_obj
792
+ # )
793
+ # monkeypatch.setattr(org_views, "SaveOrganizationForm", save_organization_cls)
794
+
795
+ # save_organization_name_obj = pretend.stub(
796
+ # validate=lambda: True, name=pretend.stub(data=db_request.POST["name"])
797
+ # )
798
+ # save_organization_name_cls = pretend.call_recorder(
799
+ # lambda *a, **kw: save_organization_name_obj
800
+ # )
801
+ # monkeypatch.setattr(
802
+ # org_views, "SaveOrganizationNameForm", save_organization_name_cls
803
+ # )
804
+
805
+ # send_email = pretend.call_recorder(lambda *a, **kw: None)
806
+ # monkeypatch.setattr(
807
+ # org_views, "send_admin_organization_renamed_email", send_email
808
+ # )
809
+ # monkeypatch.setattr(org_views, "send_organization_renamed_email", send_email)
810
+ # monkeypatch.setattr(
811
+ # org_views, "organization_owners", lambda *a, **kw: [pyramid_user]
812
+ # )
813
+
814
+ # view = org_views.ManageOrganizationSettingsViews(organization, db_request)
815
+ # result = view.save_organization_name()
816
+
817
+ # assert isinstance(result, HTTPSeeOther)
818
+ # assert result.headers["Location"] == (
819
+ # f"/manage/organization/{organization.normalized_name}/settings/#modal-close"
820
+ # )
821
+ # assert organization_service.rename_organization.calls == [
822
+ # pretend.call(organization.id, "FooBar")
823
+ # ]
824
+ # assert send_email.calls == [
825
+ # pretend.call(
826
+ # db_request,
827
+ # admin,
828
+ # organization_name="FooBar",
829
+ # previous_organization_name="foobar",
830
+ # ),
831
+ # pretend.call(
832
+ # db_request,
833
+ # {pyramid_user},
834
+ # organization_name="FooBar",
835
+ # previous_organization_name="foobar",
836
+ # ),
837
+ # ]
838
+
839
+ # @pytest.mark.usefixtures("_enable_organizations")
840
+ # def test_save_organization_name_validation_fails(
841
+ # self, db_request, organization_service, monkeypatch
842
+ # ):
843
+ # organization = OrganizationFactory.create(name="foobar")
844
+ # db_request.POST = {
845
+ # "confirm_current_organization_name": organization.name,
846
+ # "name": "FooBar",
847
+ # }
848
+ # db_request.user = pretend.stub()
849
+
850
+ # def rename_organization(organization_id, organization_name):
851
+ # organization.name = organization_name
852
+
853
+ # monkeypatch.setattr(
854
+ # organization_service,
855
+ # "rename_organization",
856
+ # pretend.call_recorder(rename_organization),
857
+ # )
858
+
859
+ # save_organization_obj = pretend.stub()
860
+ # save_organization_cls = pretend.call_recorder(
861
+ # lambda *a, **kw: save_organization_obj
862
+ # )
863
+ # monkeypatch.setattr(org_views, "SaveOrganizationForm", save_organization_cls)
864
+
865
+ # save_organization_name_obj = pretend.stub(
866
+ # validate=lambda: False, errors=pretend.stub(values=lambda: ["Invalid"])
867
+ # )
868
+ # save_organization_name_cls = pretend.call_recorder(
869
+ # lambda *a, **kw: save_organization_name_obj
870
+ # )
871
+ # monkeypatch.setattr(
872
+ # org_views, "SaveOrganizationNameForm", save_organization_name_cls
873
+ # )
874
+
875
+ # view = org_views.ManageOrganizationSettingsViews(organization, db_request)
876
+ # result = view.save_organization_name()
877
+
878
+ # assert result == {
879
+ # **view.default_response,
880
+ # "save_organization_name_form": save_organization_name_obj,
881
+ # }
882
+ # assert organization_service.rename_organization.calls == []
818
883
819
884
@pytest .mark .usefixtures ("_enable_organizations" )
820
885
def test_delete_organization (
0 commit comments