assertEquals(1, $_FOO['bar']); $this->assertEquals(1, $_FOO['whiz']); $this->assertFalse(isset($_FOO['bang'])); $this->assertEquals(1, $_EXTRA); CRM_Utils_GlobalStack::singleton()->push(array( '_FOO' => array( 'bar' => 2, 'bang' => 2, ), '_EXTRA' => 2, )); $this->assertEquals(2, $_FOO['bar']); $this->assertEquals(1, $_FOO['whiz']); $this->assertEquals(2, $_FOO['bang']); $this->assertEquals(2, $_EXTRA); CRM_Utils_GlobalStack::singleton()->pop(); $this->assertEquals(1, $_FOO['bar']); $this->assertEquals(1, $_FOO['whiz']); $this->assertEquals(NULL, $_FOO['bang']); $this->assertEquals(1, $_EXTRA); } }