Skip to:
Content

BuddyPress.org

Changeset 7853


Ignore:
Timestamp:
02/11/2014 07:42:58 PM (11 years ago)
Author:
boonebgorges
Message:

Unit tests for activitymeta functions

See #4551

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/testcases/activity/functions.php

    r7576 r7853  
    116116
    117117    /**
     118     * @group activitymeta
     119     * @group bp_activity_update_meta
     120     */
     121    public function test_bp_activity_update_meta_non_numeric_id() {
     122        $this->assertFalse( bp_activity_update_meta( 'foo', 'bar', 'baz' ) );
     123    }
     124
     125    /**
     126     * @group activitymeta
     127     * @group bp_activity_update_meta
     128     */
     129    public function test_bp_activity_update_meta_with_illegal_key_characters() {
     130        $a = $this->factory->activity->create();
     131        $krazy_key = ' f!@#$%^o *(){}o?+';
     132        bp_activity_update_meta( $a, $krazy_key, 'bar' );
     133
     134        $this->assertSame( 'bar', bp_activity_get_meta( $a, 'foo' ) );
     135    }
     136
     137    /**
     138     * @group activitymeta
     139     * @group bp_activity_update_meta
     140     */
     141    public function test_bp_activity_update_meta_stripslashes() {
     142        $a = $this->factory->activity->create();
     143        $value = "This string is totally slashin\'!";
     144        bp_activity_update_meta( $a, 'foo', $value );
     145
     146        $this->assertSame( stripslashes( $value ), bp_activity_get_meta( $a, 'foo' ) );
     147    }
     148
     149    /**
     150     * @group activitymeta
     151     * @group bp_activity_update_meta
     152     */
     153    public function test_bp_activity_update_meta_false_value_deletes() {
     154        $a = $this->factory->activity->create();
     155        bp_activity_update_meta( $a, 'foo', false );
     156        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ) );
     157    }
     158
     159    /**
     160     * @group activitymeta
     161     * @group bp_activity_update_meta
     162     */
     163    public function test_bp_activity_update_meta_new() {
     164        $a = $this->factory->activity->create();
     165        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ), '"foo" meta should be empty for this activity item.' );
     166        $this->assertTrue( bp_activity_update_meta( $a, 'foo', 'bar' ) );
     167        $this->assertSame( 'bar', bp_activity_get_meta( $a, 'foo' ) );
     168    }
     169
     170    /**
     171     * @group activitymeta
     172     * @group bp_activity_update_meta
     173     */
     174    public function test_bp_activity_update_meta_existing() {
     175        $a = $this->factory->activity->create();
     176        bp_activity_update_meta( $a, 'foo', 'bar' );
     177        $this->assertSame( 'bar', bp_activity_get_meta( $a, 'foo' ) );
     178        $this->assertTrue( bp_activity_update_meta( $a, 'foo', 'baz' ) );
     179        $this->assertSame( 'baz', bp_activity_get_meta( $a, 'foo' ) );
     180    }
     181
     182    /**
     183     * @group activitymeta
     184     * @group bp_activity_update_meta
     185     */
     186    public function test_bp_activity_update_meta_same_value() {
     187        $a = $this->factory->activity->create();
     188        bp_activity_update_meta( $a, 'foo', 'bar' );
     189        $this->assertSame( 'bar', bp_activity_get_meta( $a, 'foo' ) );
     190        $this->assertFalse( bp_activity_update_meta( $a, 'foo', 'bar' ) );
     191        $this->assertSame( 'bar', bp_activity_get_meta( $a, 'foo' ) );
     192    }
     193
     194    /**
     195     * @group activitymeta
     196     * @group bp_activity_get_meta
     197     */
     198    public function test_bp_activity_get_meta_empty_activity_id() {
     199        $this->assertFalse( bp_activity_get_meta( 0 ) );
     200    }
     201
     202    /**
     203     * @group activitymeta
     204     * @group bp_activity_get_meta
     205     */
     206    public function test_bp_activity_get_meta_non_numeric_activity_id() {
     207        $this->assertFalse( bp_activity_get_meta( 'foo' ) );
     208    }
     209
     210    /**
     211     * @group activitymeta
     212     * @group bp_activity_get_meta
     213     */
     214    public function test_bp_activity_get_meta_with_illegal_characters() {
     215        $a = $this->factory->activity->create();
     216        bp_activity_update_meta( $a, 'foo', 'bar' );
     217
     218        $krazy_key = ' f!@#$%^o *(){}o?+';
     219        $this->assertNotEmpty( bp_activity_get_meta( $a, 'foo' ) );
     220        $this->assertSame( bp_activity_get_meta( $a, 'foo' ), bp_activity_get_meta( $a, $krazy_key ) );
     221    }
     222
     223    /**
     224     * @group activitymeta
     225     * @group bp_activity_get_meta
     226     */
     227    public function test_bp_activity_get_meta_multiple() {
     228        $a = $this->factory->activity->create();
     229        bp_activity_update_meta( $a, 'foo', 'bar' );
     230        bp_activity_update_meta( $a, 'foo1', 'bar1' );
     231
     232        $am1 = new stdClass;
     233        $am1->meta_key = 'foo';
     234        $am1->meta_value = 'bar';
     235
     236        $am2 = new stdClass;
     237        $am2->meta_key = 'foo1';
     238        $am2->meta_value = 'bar1';
     239
     240        $expected = array(
     241            $am1,
     242            $am2,
     243        );
     244
     245        $this->assertEquals( $expected, bp_activity_get_meta( $a ) );
     246    }
     247
     248    /**
     249     * @group bp_activity_get_meta
     250     * @group activitymeta
     251     */
     252    public function test_bp_activity_get_meta_no_results_returns_false() {
     253        $a = $this->factory->activity->create();
     254
     255        // @todo this is a quirk
     256        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ) );
     257    }
     258
     259    /**
     260     * @group activitymeta
     261     * @group bp_activity_delete_meta
     262     */
     263    public function test_bp_activity_delete_meta_non_numeric_activity_id() {
     264        $this->assertFalse( bp_activity_delete_meta( 'foo', 'bar' ) );
     265    }
     266
     267    /**
     268     * @group activitymeta
     269     * @group bp_activity_delete_meta
     270     */
     271    public function test_bp_activity_delete_meta_trim_meta_value() {
     272        // @todo Wtf?
     273        $a = $this->factory->activity->create();
     274        bp_activity_update_meta( $a, 'foo', 'bar' );
     275        $this->assertTrue( bp_activity_delete_meta( $a, 'foo', ' bar ' ) );
     276        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ) );
     277    }
     278
     279    /**
     280     * @group activitymeta
     281     * @group bp_activity_delete_meta
     282     */
     283    public function test_bp_activity_delete_meta_single() {
     284        $a = $this->factory->activity->create();
     285        bp_activity_update_meta( $a, 'foo', 'bar' );
     286        $this->assertTrue( bp_activity_delete_meta( $a, 'foo', 'bar' ) );
     287        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ) );
     288    }
     289
     290    /**
     291     * @group activitymeta
     292     * @group bp_activity_delete_meta
     293     */
     294    public function test_bp_activity_delete_meta_all_for_activity() {
     295        $a = $this->factory->activity->create();
     296        bp_activity_update_meta( $a, 'foo', 'bar' );
     297        bp_activity_update_meta( $a, 'foo1', 'bar1' );
     298        $this->assertTrue( bp_activity_delete_meta( $a ) );
     299        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ) );
     300        $this->assertFalse( bp_activity_get_meta( $a, 'foo1' ) );
     301    }
     302
     303    /**
     304     * @group activitymeta
     305     * @group bp_activity_delete_meta
     306     */
     307    public function test_bp_activity_delete_meta_with_meta_value() {
     308        $a = $this->factory->activity->create();
     309        bp_activity_update_meta( $a, 'foo', 'bar' );
     310        $this->assertTrue( bp_activity_delete_meta( $a, 'foo', 'bar' ) );
     311        $this->assertFalse( bp_activity_get_meta( $a, 'foo' ) );
     312    }
     313
     314    /**
    118315     * @group bp_activity_get_user_mentionname
    119316     */
Note: See TracChangeset for help on using the changeset viewer.