Changeset 8545
- Timestamp:
- 06/22/2014 06:53:38 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/testcases/core/nav.php
r8540 r8545 137 137 buddypress()->bp_options_nav = $bp_options_nav; 138 138 } 139 140 /** 141 * @group bp_core_maybe_hook_new_subnav_screen_function 142 */ 143 public function test_maybe_hook_new_subnav_screen_function_user_has_access_true_no_callable_function() { 144 $subnav_item = array( 145 'user_has_access' => true, 146 'screen_function' => '123foo456', 147 ); 148 149 $expected = array( 150 'status' => 'failure', 151 ); 152 153 $this->assertSame( $expected, bp_core_maybe_hook_new_subnav_screen_function( $subnav_item ) ); 154 } 155 156 /** 157 * @group bp_core_maybe_hook_new_subnav_screen_function 158 */ 159 public function test_maybe_hook_new_subnav_screen_function_user_has_access_true_callable_function() { 160 $subnav_item = array( 161 'user_has_access' => true, 162 'screen_function' => 'wptexturize', // any old callable function 163 ); 164 165 $expected = array( 166 'status' => 'success', 167 ); 168 169 $this->assertSame( $expected, bp_core_maybe_hook_new_subnav_screen_function( $subnav_item ) ); 170 171 // clean up 172 remove_action( 'bp_screens', 'wptexturize', 3 ); 173 } 174 175 /** 176 * @group bp_core_maybe_hook_new_subnav_screen_function 177 */ 178 public function test_maybe_hook_new_subnav_screen_function_user_has_access_false_user_logged_out() { 179 $old_current_user = get_current_user_id(); 180 $this->set_current_user( 0 ); 181 182 $subnav_item = array( 183 'user_has_access' => false, 184 ); 185 186 $expected = array( 187 'status' => 'failure', 188 'redirect_args' => array(), 189 ); 190 191 $this->assertSame( $expected, bp_core_maybe_hook_new_subnav_screen_function( $subnav_item ) ); 192 193 $this->set_current_user( $old_current_user ); 194 } 195 196 /** 197 * @group bp_core_maybe_hook_new_subnav_screen_function 198 */ 199 public function test_maybe_hook_new_subnav_screen_function_user_has_access_false_user_logged_in_my_profile() { 200 $u = $this->create_user(); 201 $old_current_user = get_current_user_id(); 202 $this->set_current_user( $u ); 203 204 $this->go_to( bp_core_get_user_domain( $u ) ); 205 206 $subnav_item = array( 207 'user_has_access' => false, 208 ); 209 210 // Just test relevant info 211 $found = bp_core_maybe_hook_new_subnav_screen_function( $subnav_item ); 212 $this->assertSame( 'failure', $found['status'] ); 213 $this->assertSame( bp_core_get_user_domain( $u ), $found['redirect_args']['root'] ); 214 215 $this->set_current_user( $old_current_user ); 216 } 217 218 /** 219 * @group bp_core_maybe_hook_new_subnav_screen_function 220 */ 221 public function test_maybe_hook_new_subnav_screen_function_user_has_access_false_user_logged_in_others_profile_default_component_accessible() { 222 $u1 = $this->create_user(); 223 $u2 = $this->create_user(); 224 $old_current_user = get_current_user_id(); 225 $this->set_current_user( $u1 ); 226 227 $this->go_to( bp_core_get_user_domain( $u2 ) ); 228 229 $old_bp_nav = buddypress()->bp_nav; 230 $old_default_component = buddypress()->default_component; 231 buddypress()->default_component = 'foo'; 232 buddypress()->bp_nav = array( 233 'foo' => array( 234 'show_for_displayed_user' => true, 235 ), 236 ); 237 238 $subnav_item = array( 239 'user_has_access' => false, 240 ); 241 242 // Just test relevant info 243 $found = bp_core_maybe_hook_new_subnav_screen_function( $subnav_item ); 244 $this->assertSame( 'failure', $found['status'] ); 245 $this->assertSame( bp_core_get_user_domain( $u2 ), $found['redirect_args']['root'] ); 246 247 // Clean up 248 $this->set_current_user( $old_current_user ); 249 buddypress()->default_component = $old_default_component; 250 buddypress()->bp_nav = $old_bp_nav; 251 } 252 253 /** 254 * @group bp_core_maybe_hook_new_subnav_screen_function 255 */ 256 public function test_maybe_hook_new_subnav_screen_function_user_has_access_false_user_logged_in_others_profile_default_component_not_accessible() { 257 $u1 = $this->create_user(); 258 $u2 = $this->create_user(); 259 $old_current_user = get_current_user_id(); 260 $this->set_current_user( $u1 ); 261 262 $this->go_to( bp_core_get_user_domain( $u2 ) ); 263 264 $old_bp_nav = buddypress()->bp_nav; 265 $old_default_component = buddypress()->default_component; 266 buddypress()->default_component = 'foo'; 267 buddypress()->bp_nav = array( 268 'foo' => array( 269 'show_for_displayed_user' => false, 270 ), 271 ); 272 273 $subnav_item = array( 274 'user_has_access' => false, 275 ); 276 277 // Just test relevant info 278 $found = bp_core_maybe_hook_new_subnav_screen_function( $subnav_item ); 279 $this->assertSame( 'failure', $found['status'] ); 280 $this->assertSame( bp_core_get_user_domain( $u2 ) . bp_get_activity_slug() . '/', $found['redirect_args']['root'] ); 281 282 // Clean up 283 $this->set_current_user( $old_current_user ); 284 buddypress()->default_component = $old_default_component; 285 buddypress()->bp_nav = $old_bp_nav; 286 } 139 287 }
Note: See TracChangeset
for help on using the changeset viewer.