From c2f1cc8f7419fe4eb5e9bd5e6ce05d90e719be17 Mon Sep 17 00:00:00 2001 From: Frederic Guillot Date: Sat, 8 Oct 2016 09:58:11 -0400 Subject: Restrict task complexity to a specific range to avoid integer overflow --- tests/units/Validator/TaskValidatorTest.php | 42 +++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 tests/units/Validator/TaskValidatorTest.php (limited to 'tests/units/Validator/TaskValidatorTest.php') diff --git a/tests/units/Validator/TaskValidatorTest.php b/tests/units/Validator/TaskValidatorTest.php new file mode 100644 index 00000000..f6530027 --- /dev/null +++ b/tests/units/Validator/TaskValidatorTest.php @@ -0,0 +1,42 @@ +container); + + $result = $taskValidator->validateCreation(array('project_id' => 1, 'title' => 'test')); + $this->assertTrue($result[0]); + + $result = $taskValidator->validateCreation(array('project_id' => 1)); + $this->assertFalse($result[0]); + + $result = $taskValidator->validateCreation(array('title' => 'test')); + $this->assertFalse($result[0]); + } + + public function testRangeFields() + { + $taskValidator = new TaskValidator($this->container); + + $result = $taskValidator->validateCreation(array('project_id' => 1, 'title' => 'test', 'score' => 2147483647)); + $this->assertTrue($result[0]); + + $result = $taskValidator->validateCreation(array('project_id' => 1, 'title' => 'test', 'score' => -2147483647)); + $this->assertTrue($result[0]); + + $result = $taskValidator->validateCreation(array('project_id' => 1, 'title' => 'test', 'score' => 0)); + $this->assertTrue($result[0]); + + $result = $taskValidator->validateCreation(array('project_id' => 1, 'title' => 'test', 'score' => 2147483648)); + $this->assertFalse($result[0]); + + $result = $taskValidator->validateCreation(array('project_id' => 1, 'title' => 'test', 'score' => -2147483648)); + $this->assertFalse($result[0]); + } +} -- cgit v1.2.3