@@ -81,7 +81,7 @@ public function testListMembersAll()
8181 try {
8282 $ members = $ mockGoogleServiceDirectory ->members ->listMembers ($ groupEmailAddress );
8383 } catch (Exception $ exception ) {
84- $ this ->failure ($ exception );
84+ $ this ->failure ($ exception, ' listMembersAll ' );
8585 }
8686 self ::assertNotEmpty (
8787 $ members ->getMembers (),
@@ -102,7 +102,7 @@ public function testListMembersOnlyMember()
102102 ]
103103 );
104104 } catch (Exception $ exception ) {
105- $ this ->failure ($ exception );
105+ $ this ->failure ($ exception, ' listMembersOnlyMember ' );
106106 }
107107 self ::assertNotEmpty (
108108 $ members ->getMembers (),
@@ -123,19 +123,66 @@ public function testListMembersOnlyOwner()
123123 ]
124124 );
125125 } catch (Exception $ exception ) {
126- $ this ->failure ($ exception );
126+ $ this ->failure ($ exception, ' listMembersOnlyOwner ' );
127127 }
128128 self ::assertEmpty (
129129 $ members ->getMembers (),
130130 'Was expecting the members.list method to have no owner types. '
131131 );
132132 }
133133
134- protected function failure (Exception $ exception ): void
134+ public function testDelete ()
135+ {
136+ $ mockGoogleServiceDirectory = new GoogleMock_Directory ('anyclient ' , $ this ->dataFile );
137+ $ groupEmailAddress =
'[email protected] ' ;
138+ $ emailAddress =
'[email protected] ' ;
139+ try {
140+ $ result = $ mockGoogleServiceDirectory ->members ->hasMember (
141+ $ groupEmailAddress ,
142+ $ emailAddress
143+ );
144+ $ hasMember = $ result ['isMember ' ] ?? false ;
145+ } catch (Exception $ exception ) {
146+ self ::fail (
147+ $ exception ->getMessage ()
148+ );
149+ }
150+
151+ if (! $ hasMember ) {
152+ $ member = new GoogleDirectory_Member ();
153+ $ member ->setEmail ($ emailAddress );
154+ $ member ->setRole ('MEMBER ' );
155+ $ mockGoogleServiceDirectory ->members ->insert ($ groupEmailAddress , $ member );
156+ }
157+ $ mockGoogleServiceDirectory ->members ->delete ($ groupEmailAddress , $ emailAddress );
158+
159+ try {
160+ $ result = $ mockGoogleServiceDirectory ->members ->hasMember (
161+ $ groupEmailAddress ,
162+ 163+ );
164+ $ hasMember = $ result ['isMember ' ] ?? false ;
165+ } catch (Exception $ exception ) {
166+ self ::fail (
167+ $ exception ->getMessage ()
168+ );
169+ }
170+ self ::assertFalse (
171+ $ hasMember ,
172+ sprintf (
173+ 'Failed to delete %s from group %s ' ,
174+ $ emailAddress ,
175+ $ groupEmailAddress
176+ )
177+ );
178+ }
179+
180+ protected function failure (Exception $ exception , string $ function ): void
135181 {
136182 self ::fail (
137183 sprintf (
138- 'Was expecting the members.insert method to function, but got: %s ' ,
184+ 'Was expecting the %s method to function, but got: %s ' ,
185+ $ function ,
139186 $ exception ->getMessage ()
140187 )
141188 );
0 commit comments