[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] [18645] Updated IPC testcase for todo.
From: |
Johan Gunnarsson |
Subject: |
[Phpgroupware-cvs] [18645] Updated IPC testcase for todo. |
Date: |
Sun, 13 Jul 2008 22:51:46 +0000 |
Revision: 18645
http://svn.sv.gnu.org/viewvc/?view=rev&root=phpgroupware&revision=18645
Author: johang
Date: 2008-07-13 22:51:46 +0000 (Sun, 13 Jul 2008)
Log Message:
-----------
Updated IPC testcase for todo.
Modified Paths:
--------------
trunk/todo/test/class.ipc_todo_test.inc.php
Modified: trunk/todo/test/class.ipc_todo_test.inc.php
===================================================================
--- trunk/todo/test/class.ipc_todo_test.inc.php 2008-07-13 22:48:42 UTC (rev
18644)
+++ trunk/todo/test/class.ipc_todo_test.inc.php 2008-07-13 22:51:46 UTC (rev
18645)
@@ -9,15 +9,15 @@
* @package todo
* @version $Id$
*/
-
+
/*
you need simpletest in include_path to run this test case. get
it from
their site (http://simpletest.sourceforge.net/en/download.html)
or your
nearest debian or debian-like repository (php-simpletest).
*/
-
+
require_once 'simpletest/unit_tester.php';
-
+
/**
* Test ipctodo class in todo module.
*
@@ -26,7 +26,7 @@
class ipc_todo_test extends UnitTestCase
{
private $ipc;
-
+
private $sample_ical = "BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//ABC Corporation//NONSGML My Product//EN
@@ -49,7 +49,7 @@
END:VALARM
END:VTODO
END:VCALENDAR";
-
+
private $sample_item = array
(
'title' => 'a test',
@@ -73,95 +73,128 @@
'sdate' => '1213221600',
'edate' => '1213833600'
);
-
+
function __construct($ipctodo)
{
$this->ipc = $ipctodo;
}
-
+
function setup()
{
+ foreach($this->ipc->getIdList() as $d)
+ {
+ $this->ipc->removeData($d);
+ }
}
-
+
function teardown()
{
- foreach($this->to_be_deleted as $d)
+ foreach($this->ipc->getIdList() as $d)
{
$this->ipc->removeData($d);
}
}
-
+
function test_addData_and_getData()
{
$id = $this->ipc->addData($this->sample_ical,
'text/x-vcalendar');
+
$this->assertFalse($id === FALSE);
-
+
$data = $this->ipc->getData($id, 'text/x-vcalendar');
$this->assertTrue(is_string($data));
-
- $this->to_be_deleted[] = $id;
}
-
+
function test_getIdList()
{
$id_list_before = $this->ipc->getIdlist();
-
+
$a = $this->ipc->addData($this->sample_item,
"application/x-phpgw-todo");
$b = $this->ipc->addData($this->sample_item,
"application/x-phpgw-todo");
$c = $this->ipc->addData($this->sample_item,
"application/x-phpgw-todo");
-
+
$id_list_after = $this->ipc->getIdlist();
-
+
$this->assertEqual($id_list_after,
array_merge($id_list_before, array($a, $b,
$c)));
-
- $this->to_be_deleted[] = $a;
- $this->to_be_deleted[] = $b;
- $this->to_be_deleted[] = $c;
}
-
+
+ function test_getIdList_with_lastmod()
+ {
+ $now = time();
+
+ $this->assertEqual($this->ipc->getIdlist($now + 10),
array());
+ $this->assertEqual($this->ipc->getIdlist($now),
array());
+ $this->assertEqual($this->ipc->getIdlist($now - 10),
array());
+
+ $a = $this->ipc->addData($this->sample_item,
'text/plain');
+
+ $id_list_plus10 = $this->ipc->getIdlist($now + 10);
+ $id_list_now = $this->ipc->getIdlist($now);
+ $id_list_minus10 = $this->ipc->getIdlist($now - 10);
+
+ $this->assertEqual($id_list_plus10, array());
+ $this->assertEqual($id_list_now, array());
+ $this->assertEqual($id_list_minus10, array($a));
+ }
+
function test_removeData()
{
$id = $this->ipc->addData($this->sample_item,
"application/x-phpgw-todo");
-
+
$this->assertTrue(is_array($this->ipc->getData($id,
"application/x-phpgw-todo")));
-
+
$this->ipc->removeData($id);
-
+
$this->assertFalse($this->ipc->getData($id,
"application/x-phpgw-todo"));
-
- $this->to_be_deleted[] = $id;
}
-
- function test_replaceData()
+
+ function test_replaceData_replace()
{
$id = $this->ipc->addData($this->sample_item,
"application/x-phpgw-todo");
$this->assertTrue(is_array($this->ipc->getData($id,
"application/x-phpgw-todo")));
-
+
$new_item = $this->sample_item;
$new_item["descr"] = "replaced description";
-
- $this->ipc->replaceData($id,
+
+ $new_id = $this->ipc->replaceData($id,
$new_item, "application/x-phpgw-todo");
-
+
+ $this->assertEqual($new_id, $id);
+
$data = $this->ipc->getData($id,
"application/x-phpgw-todo");
-
+
$this->assertEqual($data["descr"], "replaced
description");
-
+
// @todo test more properties
-
- $this->to_be_deleted[] = $id;
}
-
+
+ function test_replaceData_add()
+ {
+ $id = 100000;
+
+ $this->assertFalse($this->ipc->existData($id));
+
+ $new_id = $this->ipc->replaceData($id,
+ $this->sample_item, 'application/x-phpgw-todo');
+
+ $this->assertTrue($new_id);
+ $this->assertNotEqual($new_id, $id);
+
+ $data = $this->ipc->getData($new_id,
'application/x-phpgw-todo');
+
+ $this->assertEqual($data['descr'],
$this->sample_item['descr']);
+ }
+
function test_existData()
{
$id = $this->ipc->addData($this->sample_item,
@@ -173,27 +206,50 @@
$this->assertFalse($this->ipc->existData($id));
}
-
+
function test_convertData_from_ical_1()
{
$converted_data = $this->ipc->convertData(
$this->sample_ical, "text/x-vcalendar",
"application/x-phpgw-todo");
-
+
$this->assertEqual($converted_data["title"], "Submit
Income Taxes");
// @todo test more properties
}
-
+
+ /**
+ * Data from OMA-SCTS.
+ */
+ function test_convertData_from_ical_2()
+ {
+ $data = 'BEGIN:VCALENDAR
+VERSION:2.0
+BEGIN:VEVENT
+UID:address@hidden
+DTSTART:20080704T010500Z
+DTEND:20080704T020500Z
+SUMMARY:Item #1
+END:VEVENT
+END:VCALENDAR';
+
+ $converted_data = $this->ipc->convertData(
+ $data, 'text/calendar',
'application/x-phpgw-todo');
+
+ $this->assertEqual($converted_data["title"], 'Item #1');
+ $this->assertEqual($converted_data["syear"], '2008');
+ $this->assertEqual($converted_data["eyear"], '2008');
+ }
+
function test_convertData_to_ical_1()
{
$converted_data = $this->ipc->convertData(
$this->sample_item, "application/x-phpgw-todo",
"text/x-vcalendar");
-
+
$this->assertTrue(strpos($converted_data,
'SUMMARY:a test') !== FALSE);
-
+
// @todo test more properties
}
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] [18645] Updated IPC testcase for todo.,
Johan Gunnarsson <=