Account Suspended
Account Suspended
This Account has been suspended.
Contact your hosting provider for more information.
 All Data Structures Functions Variables Pages
RedBeanModelTypeValidatorTest.php
1 <?php
2  /*********************************************************************************
3  * Zurmo is a customer relationship management program developed by
4  * Zurmo, Inc. Copyright (C) 2017 Zurmo Inc.
5  *
6  * Zurmo is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU Affero General Public License version 3 as published by the
8  * Free Software Foundation with the addition of the following permission added
9  * to Section 15 as permitted in Section 7(a): FOR ANY PART OF THE COVERED WORK
10  * IN WHICH THE COPYRIGHT IS OWNED BY ZURMO, ZURMO DISCLAIMS THE WARRANTY
11  * OF NON INFRINGEMENT OF THIRD PARTY RIGHTS.
12  *
13  * Zurmo is distributed in the hope that it will be useful, but WITHOUT
14  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15  * FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
16  * details.
17  *
18  * You should have received a copy of the GNU Affero General Public License along with
19  * this program; if not, see http://www.gnu.org/licenses or write to the Free
20  * Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
21  * 02110-1301 USA.
22  *
23  * You can contact Zurmo, Inc. with a mailing address at 27 North Wacker Drive
24  * Suite 370 Chicago, IL 60606. or at email address contact@zurmo.com.
25  *
26  * The interactive user interfaces in original and modified versions
27  * of this program must display Appropriate Legal Notices, as required under
28  * Section 5 of the GNU Affero General Public License version 3.
29  *
30  * In accordance with Section 7(b) of the GNU Affero General Public License version 3,
31  * these Appropriate Legal Notices must retain the display of the Zurmo
32  * logo and Zurmo copyright notice. If the display of the logo is not reasonably
33  * feasible for technical reasons, the Appropriate Legal Notices must display the words
34  * "Copyright Zurmo Inc. 2017. All rights reserved".
35  ********************************************************************************/
36 
38  {
39  public static function getDependentTestModelClassNames()
40  {
41  return array('DateDateTime');
42  }
43 
44  public function testValidAndInvalidDateDateTimeValidation()
45  {
46  $language = Yii::app()->getLanguage();
47  $this->assertEquals($language, 'en');
48  $this->assertEquals(false, CDateTimeParser::parse(
50  $this->assertEquals(null, DateTimeUtil::resolveValueForDateLocaleFormattedDisplay('04:04:1980'));
51  $model = new DateDateTime();
52  $model->aDate = '04:04:1980';
53  $model->aDateTime = 'notATimeStamp';
54  $saved = $model->save();
55  $this->assertFalse($saved);
56  $compareData = array(
57  'aDate' => array('A Date must be date.'),
58  'aDateTime' => array('A Date Time must be datetime.')
59  );
60  $this->assertEquals($compareData, $model->getErrors());
61  //Now test setting an integer for dateTime which is wrong
62  $model = new DateDateTime();
63  $model->aDate = '1981-07-05';
64  $model->aDateTime = 1241341412421;
65  $saved = $model->save();
66  $this->assertFalse($saved);
67  $compareData = array(
68  'aDateTime' => array('A Date Time must be datetime.')
69  );
70  $this->assertEquals($compareData, $model->getErrors());
71  //Now test a successful validation.
72  $this->assertEquals('M/d/yy', DateTimeUtil::getLocaleDateFormat());
73  $model = new DateDateTime();
74  $model->aDate = '1981-07-05';
75  $model->aDateTime = '1981-07-05 04:04:04';
76  $saved = $model->save();
77  $this->assertEquals(array(), $model->getErrors());
78  $this->assertTrue($saved);
79  $this->assertNull($model->aDateTime2);
80 
81  //now set DateTime2 and test if you save and then clear it that it is behaving properly.
82  $model->aDateTime2 = '1981-07-05 04:04:04';
83  $saved = $model->save();
84  $this->assertTrue($saved);
85  $this->assertEquals('1981-07-05 04:04:04', $model->aDateTime2);
86  $model->aDateTime2 = null;
87  $saved = $model->save();
88  $this->assertTrue($saved);
89  $id = $model->id;
90  $model->forget();
91  $model = DateDateTime::getById($id);
92  $this->assertNull($model->aDateTime2);
93  }
94 
95  public function testDateTimeValidation()
96  {
97  $this->assertNotNull(CDateTimeParser::parse('2009-11-11 21:18:09', DatabaseCompatibilityUtil::getDateTimeFormat()));
98  $this->assertEmpty(CDateTimeParser::parse('ascascasc', DatabaseCompatibilityUtil::getDateTimeFormat()));
99  $this->assertEmpty(CDateTimeParser::parse(null, DatabaseCompatibilityUtil::getDateTimeFormat()));
100  }
101  }
102 ?>
static resolveValueForDateLocaleFormattedDisplay($date, $displayFormat=null)
static getById($id, $modelClassName=null)
Generated on Sat Jul 11 2020 07:10:26
Account Suspended
Account Suspended
This Account has been suspended.
Contact your hosting provider for more information.