From 1bbf00e0b86a22eeec58e6fc5961ed0f51f05fe2 Mon Sep 17 00:00:00 2001
From: Cristiano Magro <cristiano.magro@vola.it>
Date: Tue, 16 Jan 2018 15:48:57 +0100
Subject: [PATCH] Refactor inizio a sistemare la libreria in stile PSR-0

---
 tests/SetupUploadTest.php |  128 ++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 121 insertions(+), 7 deletions(-)

diff --git a/tests/SetupUploadTest.php b/tests/SetupUploadTest.php
index c014a13..4792f03 100644
--- a/tests/SetupUploadTest.php
+++ b/tests/SetupUploadTest.php
@@ -1,19 +1,43 @@
 <?php
 
-
 require 'bootstrap.php';
 
 /**
- * Description of FbResponseTest
+ * Implementazione dei test per la classe SetupUpload
  *
  * @author Cristiano Magro
  */
 class SetupUploadTest extends PHPUnit_Framework_TestCase {
 
-    public static function setUpBeforeClass() {
+    /**
+     *  @var $object SetupUpload 
+     */
+    protected $object;
 
+    /**
+     * Set up fixture, inizializzazione dei test.
+     * Eseguito prima di ogni test
+     */
+    protected function setUp() {
+        $this->object = SetupUpload::create();
     }
 
+    /**
+     * Tears down the fixture, for example, closes a network connection.
+     * This method is called after a test is executed.
+     */
+    protected function tearDown() {
+        
+    }
+
+    public static function setUpBeforeClass() {
+        
+    }
+
+    /**
+     * Conversione di una stringa nel corrispondente valore di byte
+     * @since 0.3.0
+     */
     public function test_str2Bytes() {
 
         $this->assertEquals('1', SetupUpload::str2Bytes('1'));
@@ -24,24 +48,114 @@
         $this->assertEquals('1024', SetupUpload::str2Bytes('1 Kb'));
         $this->assertEquals('1024', SetupUpload::str2Bytes('1 KB'));
 
-
         $this->assertEquals('1024', SetupUpload::str2Bytes('1 kb'));
         $this->assertEquals('2048', SetupUpload::str2Bytes('2 Kb'));
         $this->assertEquals('1024', SetupUpload::str2Bytes('1 KB'));
         $this->assertEquals('2048', SetupUpload::str2Bytes('2           Kb'));
 
-
         $this->assertEquals('1048576', SetupUpload::str2Bytes('1 mB'));
-
 
         $this->assertEquals('0', SetupUpload::str2Bytes('0 B'));
         $this->assertEquals('0', SetupUpload::str2Bytes('0 kB'));
         $this->assertEquals('0', SetupUpload::str2Bytes('0 mB'));
         $this->assertEquals('0', SetupUpload::str2Bytes('0 GB'));
         $this->assertEquals('0', SetupUpload::str2Bytes('0 TB'));
-        $this->assertEquals('0', SetupUpload::str2Bytes('0 XB'));
+    }
 
+    /**
+     * Conversione di una stringa nel corrispondente valore di byte, stringhe 
+     * non convertibili devono andare in errore
+     * @since 0.3.1
+     * @expectedException UploadFile_Exc
+     * @dataProvider getBytesStringNotValid
+     */
+    public function test_str2BytesNonValido($byteString) {
+        SetupUpload::str2Bytes($byteString);
+    }
 
+    public function getBytesStringNotValid() {
+        return array(
+            array(''),
+            array('b'),
+            array('1 k'),
+            array('1 a'),
+        );
+    }
+
+    /**
+     * La coda non inizializzata prevede un numero minimo di files
+     * @since 0.3.1
+     */
+    public function testDefaultValue() {
+        $this->assertEquals(1, $this->object->getNumMaxFiles());
+    }
+
+    /**
+     * Gestione di valori non adeguati 
+     * @since 0.3.1
+     * @expectedException UploadFile_Exc
+     * @dataProvider getNumMaxFilesException
+     */
+    public function testNotValidNumMaxFilesGetException($num) {
+        $this->object->setNumMaxFiles($num);
+    }
+
+    public function getNumMaxFilesException() {
+        return array(
+            array(''),
+            array(0),
+            array(-10),
+            array('a'),
+        );
+    }
+
+    /**
+     * Caselle della coda valide
+     * @since 0.3.1
+     * @dataProvider getSomeMaxFiles
+     */
+    public function testSomeValidMaxFiles($num) {
+        $this->object->setNumMaxFiles($num);
+        $this->assertEquals($num, $this->object->getNumMaxFiles());
+    }
+
+    public function getSomeMaxFiles() {
+        return array(
+            array(2),
+            array(020),
+            array(100),
+            array(10000),
+        );
+    }
+
+    /**
+     * Impostazioni delle dimensioni massime del totale caricabile
+     * @since 0.3.1
+     */
+    public function testSetSizeMaxFilesByte() {
+        $this->object->setSizeMaxFilesByte(100);
+        $this->assertEquals(100, $this->object->getSizeMaxFilesByte());
+
+        $this->object->setSizeMaxFilesByte('200');
+        $this->assertEquals(200, $this->object->getSizeMaxFilesByte());
+
+        $this->object->setSizeMaxFilesByte('3 kb');
+        $this->assertEquals(1024 * 3, $this->object->getSizeMaxFilesByte());
+    }
+
+    /**
+     * Impostazioni delle dimensioni massime di un file
+     * @since 0.3.1
+     */
+    public function testSetSizeLimitFile() {
+        $this->object->setSizeLimitFile(100);
+        $this->assertEquals(100, $this->object->getSizeLimitFile());
+
+        $this->object->setSizeLimitFile('200');
+        $this->assertEquals(200, $this->object->getSizeLimitFile());
+
+        $this->object->setSizeLimitFile('3kb');
+        $this->assertEquals(1024 * 3, $this->object->getSizeLimitFile());
     }
 
 }

--
Gitblit v1.8.0