automatic billable calculation (#3200)
This commit is contained in:
@@ -374,6 +374,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'color' => '@string',
|
||||
'number' => '@string',
|
||||
'comment' => '@string',
|
||||
@@ -385,6 +386,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'boolean',
|
||||
'billable' => 'bool',
|
||||
'color' => '@string',
|
||||
'number' => '@string',
|
||||
'comment' => '@string',
|
||||
@@ -399,6 +401,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'color' => '@string',
|
||||
'metaFields' => ['result' => 'array', 'type' => 'CustomerMeta'],
|
||||
'teams' => ['result' => 'array', 'type' => 'Team'],
|
||||
@@ -427,6 +430,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'color' => '@string',
|
||||
'customer' => 'int',
|
||||
'comment' => '@string',
|
||||
@@ -438,6 +442,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'color' => '@string',
|
||||
'customer' => ['result' => 'object', 'type' => 'Customer'],
|
||||
'comment' => '@string',
|
||||
@@ -449,6 +454,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'customer' => 'int',
|
||||
'color' => '@string',
|
||||
'metaFields' => ['result' => 'array', 'type' => 'ProjectMeta'],
|
||||
@@ -465,6 +471,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'customer' => 'int',
|
||||
'color' => '@string',
|
||||
'metaFields' => ['result' => 'array', 'type' => 'ProjectMeta'],
|
||||
@@ -486,6 +493,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'project' => '@int',
|
||||
'color' => '@string',
|
||||
'comment' => '@string',
|
||||
@@ -496,6 +504,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'project' => ['result' => 'object', 'type' => '@ProjectExpanded'],
|
||||
'color' => '@string',
|
||||
'comment' => '@string',
|
||||
@@ -507,6 +516,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'project' => '@int',
|
||||
'color' => '@string',
|
||||
'metaFields' => ['result' => 'array', 'type' => 'ProjectMeta'],
|
||||
@@ -521,6 +531,7 @@ abstract class APIControllerBaseTest extends ControllerBaseTest
|
||||
'id' => 'int',
|
||||
'name' => 'string',
|
||||
'visible' => 'bool',
|
||||
'billable' => 'bool',
|
||||
'project' => '@int',
|
||||
'color' => '@string',
|
||||
'metaFields' => ['result' => 'array', 'type' => 'ProjectMeta'],
|
||||
|
||||
@@ -35,7 +35,7 @@ class PermissionControllerTest extends ControllerBaseTest
|
||||
$client = $this->getClientForAuthenticatedUser(User::ROLE_SUPER_ADMIN);
|
||||
$this->assertAccessIsGranted($client, '/admin/permissions');
|
||||
$this->assertHasDataTable($client);
|
||||
$this->assertDataTableRowCount($client, 'datatable_user_admin_permissions', 121);
|
||||
$this->assertDataTableRowCount($client, 'datatable_user_admin_permissions', 123);
|
||||
$this->assertPageActions($client, [
|
||||
//'back' => $this->createUrl('/admin/user/'),
|
||||
'create modal-ajax-form' => $this->createUrl('/admin/permissions/roles/create'),
|
||||
|
||||
@@ -32,6 +32,7 @@ class ActivityTest extends AbstractEntityTest
|
||||
$this->assertNull($sut->getName());
|
||||
$this->assertNull($sut->getComment());
|
||||
$this->assertTrue($sut->isVisible());
|
||||
$this->assertTrue($sut->isBillable());
|
||||
$this->assertTrue($sut->isGlobal());
|
||||
$this->assertNull($sut->getColor());
|
||||
self::assertFalse($sut->hasColor());
|
||||
@@ -57,6 +58,11 @@ class ActivityTest extends AbstractEntityTest
|
||||
$this->assertInstanceOf(Activity::class, $sut->setVisible(false));
|
||||
$this->assertFalse($sut->isVisible());
|
||||
|
||||
$sut->setVisible(false);
|
||||
self::assertFalse($sut->isVisible());
|
||||
$sut->setVisible(true);
|
||||
self::assertTrue($sut->isVisible());
|
||||
|
||||
$this->assertInstanceOf(Activity::class, $sut->setComment('hello world'));
|
||||
$this->assertEquals('hello world', $sut->getComment());
|
||||
|
||||
@@ -145,6 +151,7 @@ class ActivityTest extends AbstractEntityTest
|
||||
['label.color', 'string'],
|
||||
['label.visible', 'boolean'],
|
||||
['label.comment', 'string'],
|
||||
['label.billable', 'boolean'],
|
||||
];
|
||||
|
||||
self::assertCount(\count($expected), $columns);
|
||||
|
||||
@@ -31,6 +31,7 @@ class CustomerTest extends AbstractEntityTest
|
||||
self::assertNull($sut->getNumber());
|
||||
self::assertNull($sut->getComment());
|
||||
self::assertTrue($sut->isVisible());
|
||||
self::assertTrue($sut->isBillable());
|
||||
|
||||
self::assertNull($sut->getCompany());
|
||||
self::assertNull($sut->getVatId());
|
||||
@@ -71,6 +72,11 @@ class CustomerTest extends AbstractEntityTest
|
||||
self::assertInstanceOf(Customer::class, $sut->setVisible(false));
|
||||
self::assertFalse($sut->isVisible());
|
||||
|
||||
$sut->setVisible(false);
|
||||
self::assertFalse($sut->isVisible());
|
||||
$sut->setVisible(true);
|
||||
self::assertTrue($sut->isVisible());
|
||||
|
||||
self::assertInstanceOf(Customer::class, $sut->setComment('hello world'));
|
||||
self::assertEquals('hello world', $sut->getComment());
|
||||
|
||||
@@ -198,6 +204,7 @@ class CustomerTest extends AbstractEntityTest
|
||||
['label.color', 'string'],
|
||||
['label.visible', 'boolean'],
|
||||
['label.comment', 'string'],
|
||||
['label.billable', 'boolean'],
|
||||
];
|
||||
|
||||
self::assertCount(\count($expected), $columns);
|
||||
|
||||
@@ -36,6 +36,7 @@ class ProjectTest extends AbstractEntityTest
|
||||
self::assertNull($sut->getEnd());
|
||||
self::assertNull($sut->getComment());
|
||||
self::assertTrue($sut->isVisible());
|
||||
self::assertTrue($sut->isBillable());
|
||||
self::assertNull($sut->getColor());
|
||||
self::assertFalse($sut->hasColor());
|
||||
self::assertInstanceOf(Collection::class, $sut->getMetaFields());
|
||||
@@ -96,6 +97,11 @@ class ProjectTest extends AbstractEntityTest
|
||||
|
||||
self::assertInstanceOf(Project::class, $sut->setVisible(false));
|
||||
self::assertFalse($sut->isVisible());
|
||||
|
||||
$sut->setVisible(false);
|
||||
self::assertFalse($sut->isVisible());
|
||||
$sut->setVisible(true);
|
||||
self::assertTrue($sut->isVisible());
|
||||
}
|
||||
|
||||
public function testMetaFields()
|
||||
@@ -173,6 +179,7 @@ class ProjectTest extends AbstractEntityTest
|
||||
['label.color', 'string'],
|
||||
['label.visible', 'boolean'],
|
||||
['label.comment', 'string'],
|
||||
['label.billable', 'boolean'],
|
||||
];
|
||||
|
||||
self::assertCount(\count($expected), $columns);
|
||||
|
||||
@@ -72,6 +72,7 @@ class EntityWithMetaFieldsExporterTest extends TestCase
|
||||
self::assertEquals('#ababab', $worksheet->getCellByColumnAndRow(++$i, 2)->getValue());
|
||||
self::assertFalse($worksheet->getCellByColumnAndRow(++$i, 2)->getValue());
|
||||
self::assertEquals('Lorem Ipsum', $worksheet->getCellByColumnAndRow(++$i, 2)->getValue());
|
||||
self::assertTrue($worksheet->getCellByColumnAndRow(++$i, 2)->getValue());
|
||||
self::assertEquals('some magic', $worksheet->getCellByColumnAndRow(++$i, 2)->getValue());
|
||||
self::assertEquals('is happening', $worksheet->getCellByColumnAndRow(++$i, 2)->getValue());
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user