Skip to content

Commit

Permalink
keep_flashdata array test
Browse files Browse the repository at this point in the history
  • Loading branch information
johnathancroom committed Nov 30, 2012
1 parent 3892995 commit 66b36ef
Showing 1 changed file with 51 additions and 1 deletion.
52 changes: 51 additions & 1 deletion tests/codeigniter/libraries/Session_test.php
Original file line number Diff line number Diff line change
Expand Up @@ -269,6 +269,56 @@ public function test_keep_flashdata()
$this->assertNull($this->session->native->flashdata($key));
}

public function test_keep_flashdata_with_array()
{
// Set flashdata array for each driver
$cdata = array(
'one' => 'first',
'two' => 'second',
'three' => 'third',
'foo' => 'bar',
'bar' => 'baz'
);
$ndata = array(
'one' => 'gold',
'two' => 'silver',
'three' => 'bronze',
'foo' => 'baz',
'bar' => 'foo'
);
$kdata = array(
'one',
'two',
'three',
'foo',
'bar'
);
$this->session->cookie->set_flashdata($cdata);
$this->session->native->set_flashdata($ndata);

// Simulate page reload and verify independent messages
$this->session->cookie->reload();
$this->session->native->reload();
$this->assertEquals($cdata, $this->session->cookie->all_flashdata());
$this->assertEquals($ndata, $this->session->native->all_flashdata());

// Keep messages
$this->session->cookie->keep_flashdata($kdata);
$this->session->native->keep_flashdata($kdata);

// Simulate next page reload and verify message persistence
$this->session->cookie->reload();
$this->session->native->reload();
$this->assertEquals($cdata, $this->session->cookie->all_flashdata());
$this->assertEquals($ndata, $this->session->native->all_flashdata());

// Simulate next page reload and verify absence of messages
$this->session->cookie->reload();
$this->session->native->reload();
$this->assertEmpty($this->session->cookie->all_flashdata());
$this->assertEmpty($this->session->native->all_flashdata());
}

/**
* Test the all_flashdata() function
*
Expand Down Expand Up @@ -399,4 +449,4 @@ public function test_sess_destroy()
$this->session->native->sess_destroy();
$this->assertNull($this->session->native->userdata($key));
}
}
}

0 comments on commit 66b36ef

Please sign in to comment.