Skip to content

Commit

Permalink
Another one first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
fdisotto committed Mar 25, 2015
1 parent 7d7a2f5 commit 904a6c8
Show file tree
Hide file tree
Showing 5 changed files with 132 additions and 0 deletions.
25 changes: 25 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"name": "fdisotto/PartitaIVA",
"description": "Partita IVA checker",
"homepage": "https://github.com/fdisotto/partitaIva",
"type": "library",
"license": "MIT",
"authors": [
{
"name": "Fabio Di Sotto",
"email": "[email protected]"
}
],
"require": {
"php": ">=5.3.0"
},
"require-dev": {
"phpunit/phpunit": "4.5.*"
},
"minimum-stability": "dev",
"autoload": {
"psr-0": {
"fdisotto": "src/"
}
}
}
8 changes: 8 additions & 0 deletions example/index.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?php
require_once '../vendor/autoload.php';

$pIva = new \fdisotto\PartitaIVA();

var_dump($pIva->check('012345678'));

var_dump($pIva->check('01234567891'));
24 changes: 24 additions & 0 deletions phpunit.xml.dist
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<phpunit backupGlobals="false"
backupStaticAttributes="false"
colors="true"
convertErrorsToExceptions="true"
convertNoticesToExceptions="true"
convertWarningsToExceptions="true"
processIsolation="false"
stopOnFailure="false"
syntaxCheck="true"
verbose="true"
bootstrap="vendor/autoload.php"
>
<php>
<ini name="display_errors" value="on"/>
</php>

<testsuites>
<testsuite name="PHP MP4Box Tests Suite">
<directory>tests</directory>
</testsuite>
</testsuites>

</phpunit>
55 changes: 55 additions & 0 deletions src/fdisotto/PartitaIVA.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<?php
/**
* PartitaIva - Partita IVA checker
*
* @author Fabio Di Sotto <[email protected]>
* @copyright 2015 Fabio Di Sotto
* @link https://github.com/fdisotto/cac-api
* @version 1.0.0
*
* MIT LICENSE
*
* Permission is hereby granted, free of charge, to any person obtaining
* a copy of this software and associated documentation files (the
* "Software"), to deal in the Software without restriction, including
* without limitation the rights to use, copy, modify, merge, publish,
* distribute, sublicense, and/or sell copies of the Software, and to
* permit persons to whom the Software is furnished to do so, subject to
* the following conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
* LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
* OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

namespace fdisotto;

/**
* PartitaIVA
*
* Partita IVA checker
*
* @author Fabio Di Sotto
*/
class PartitaIVA
{
/**
* Return the check result
*
* @param string $partitaIVA Partita IVA to check
* @return bool Check result
*/
public function check($partitaIVA)
{
$pattern = "/^[0-9]{11}$/i";

return preg_match($pattern, trim($partitaIVA)) ? true : false;
}
}
20 changes: 20 additions & 0 deletions tests/PartitaIVATest.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?php
class PartitaIVATest extends PHPUnit_Framework_TestCase
{
private $pIva;

public function setUp()
{
$this->pIva = new \fdisotto\PartitaIVA();
}

public function testCheckTrue()
{
$this->assertTrue($this->pIva->check('01234567891'));
}

public function testCheckFalse()
{
$this->assertFalse($this->pIva->check('123456'));
}
}

0 comments on commit 904a6c8

Please sign in to comment.