r4125 - in trunk/plugins: ullCorePlugin/test/unit/ullTableTool ullMailPlugin/data/fixtures ullMailPlugin/lib/model/doctrine

0 views
Skip to first unread message

s...@ull.at

unread,
Jul 7, 2014, 3:22:58 AM7/7/14
to ullrigh...@googlegroups.com
Author: klemens
Date: 2014-07-07 09:22:57 +0200 (Mon, 07 Jul 2014)
New Revision: 4125

Added:
trunk/plugins/ullCorePlugin/test/unit/ullTableTool/ullTableToolGeneratorDefaultsTest.php
Modified:
trunk/plugins/ullMailPlugin/data/fixtures/ullMailFixtures.yml
trunk/plugins/ullMailPlugin/lib/model/doctrine/PluginUllNewsletterMailingListTable.class.php
Log:
Added ullGenerator default handling test

Added: trunk/plugins/ullCorePlugin/test/unit/ullTableTool/ullTableToolGeneratorDefaultsTest.php
===================================================================
--- trunk/plugins/ullCorePlugin/test/unit/ullTableTool/ullTableToolGeneratorDefaultsTest.php (rev 0)
+++ trunk/plugins/ullCorePlugin/test/unit/ullTableTool/ullTableToolGeneratorDefaultsTest.php 2014-07-07 07:22:57 UTC (rev 4125)
@@ -0,0 +1,144 @@
+<?php
+
+include dirname(__FILE__) . '/../../../../../test/bootstrap/unit.php';
+
+class myTestCase extends sfDoctrineTestCase
+{
+
+}
+
+// create context since it is required by ->getUser() etc.
+sfContext::createInstance($configuration);
+sfContext::getInstance()->getConfiguration()->loadHelpers('I18N');
+
+$t = new myTestCase(3, new lime_output_color, $configuration);
+$path = sfConfig::get('sf_root_dir') . '/plugins/ullCorePlugin/data/fixtures/';
+$t->setFixturesPath($path);
+
+
+$t->begin('Basic sfForm default handling');
+
+ $form = new sfForm();
+ $widget = new sfWidgetFormInput();
+ $form->setWidget('my_name', $widget);
+
+ $t->is(
+ (string) $form['my_name'],
+ '<input type="text" name="my_name" id="my_name" />',
+ 'No default rendered without any defaults set'
+ );
+
+ $form = new sfForm();
+ $widget = new sfWidgetFormInput();
+ $widget->setOption('default', 'Pippi');
+ $form->setWidget('my_name', $widget);
+
+ $t->is(
+ (string) $form['my_name'],
+ '<input type="text" name="my_name" value="Pippi" id="my_name" />',
+ 'Renderes correct default from widget option "default"'
+ );
+
+ $form->setDefault('my_name', 'Quaksi');
+
+ $t->is(
+ (string) $form['my_name'],
+ '<input type="text" name="my_name" value="Quaksi" id="my_name" />',
+ '$sfForm->setDefault() overwrites widget option "default"'
+ );
+
+
+
+$t->diag('ullTableToolGenerator defaults');
+
+ $generator = new ullTableToolGenerator('TestTable', 'w');
+ $t->is($generator->getDefaults(), array(), 'Defaults are empty by default');
+
+ $object = new TestTable();
+ $generator->buildForm($object);
+ $form = $generator->getForm();
+
+ $reference = array(
+ 'Test1Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ 'Test2Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ );
+
+ $t->is($form->getDefaults(), $reference, 'Form has correct defaults for a new TestTable record');
+
+
+ $generator = new ullTableToolGenerator('TestTable', 'w');
+ $object = new TestTable();
+ $generator->getColumnsConfig()->offsetGet('my_email')
+ ->setWidgetOption('default', 'ri...@zoidl.at');
+ $generator->buildForm($object);
+ $form = $generator->getForm();
+
+ // Note: the following value/id arrays are created by injectIdentifier option
+ $reference = array(
+ 'Test1Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ 'Test2Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ );
+
+ $t->is($form->getDefaults(), $reference, 'Column config widget defaults are not supported');
+
+
+ $generator = new ullTableToolGenerator('TestTable', 'w');
+ $object = new TestTable();
+ $generator->getColumnsConfig()->offsetGet('my_email')
+ ->setDefault('je...@voigt.de');
+ $generator->getColumnsConfig()->offsetGet('Test1Entries')
+ ->setDefault(array(1, 2)); // Pear, Apple
+ $generator->buildForm($object);
+ $form = $generator->getForm();
+
+ $reference = array(
+ 'my_email' => 'je...@voigt.de',
+ 'Test1Entries' => array(
+ 'value' => array(1, 2),
+ 'id' => NULL,
+ ),
+ 'Test2Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ );
+
+
+ $t->is($form->getDefaults(), $reference, 'Column config defaults are used');
+
+ $generator = new ullTableToolGenerator('TestTable', 'w');
+ $object = new TestTable;
+ $object->my_email = 'ri...@zoidl.at';
+ $generator->getColumnsConfig()->offsetGet('my_email')
+ ->setDefault('je...@voigt.de');
+ $generator->buildForm($object);
+ $form = $generator->getForm();
+
+ $reference = array(
+ 'my_email' => 'ri...@zoidl.at',
+ 'Test1Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ 'Test2Entries' => array(
+ 'value' => NULL,
+ 'id' => NULL,
+ ),
+ );
+
+ $t->is($form->getDefaults(), $reference,
+ 'Object values are used and not overwritten by defaults');
+
+
\ No newline at end of file

Modified: trunk/plugins/ullMailPlugin/data/fixtures/ullMailFixtures.yml
===================================================================
--- trunk/plugins/ullMailPlugin/data/fixtures/ullMailFixtures.yml 2014-07-05 09:50:10 UTC (rev 4124)
+++ trunk/plugins/ullMailPlugin/data/fixtures/ullMailFixtures.yml 2014-07-07 07:22:57 UTC (rev 4125)
@@ -4,6 +4,7 @@
name: Product news
description: News about our products. Sent approx. six times a year.
is_subscribed_by_default: true
+ is_default: true
best_practices:
id: 102
name: Best practices
@@ -26,6 +27,7 @@
name: ullright Layout
html_head: '<style type="text/css">h1 {color: red;} </style>'
html_body: '[TRACKING]<img src="http://www.ullright.org/ullCorePlugin/images/logo_120.png" /><br /><h1>ullright News</h1>[CONTENT]<p>[ONLINE_LINK]</p><p>[UNSUBSCRIBE]</p><p>(C) 2011 by ull.at</p>'
+ is_default: true
ull_newsletter_layout_2:
id: 202
name: ullright alternativ Layout

Modified: trunk/plugins/ullMailPlugin/lib/model/doctrine/PluginUllNewsletterMailingListTable.class.php
===================================================================
--- trunk/plugins/ullMailPlugin/lib/model/doctrine/PluginUllNewsletterMailingListTable.class.php 2014-07-05 09:50:10 UTC (rev 4124)
+++ trunk/plugins/ullMailPlugin/lib/model/doctrine/PluginUllNewsletterMailingListTable.class.php 2014-07-07 07:22:57 UTC (rev 4125)
@@ -20,8 +20,6 @@
/**
* Returns an array with the default ullNewsLetterMailingList ids or an empty array
*
- * TODO: normaly only one list should by the default! why "defaultS" ?
- *
* @return array
*/
public static function getDefaultIds()

Reply all
Reply to author
Forward
0 new messages