Advertisement
aelliott

five9ScrubTest

Oct 9th, 2017
302
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 6.53 KB | None | 0 0
  1. <?php
  2.  
  3. use PHPUnit\Framework\TestCase as UnitTestCase;
  4. use App\five9;
  5.  
  6. class ExampleTest extends UnitTestCase
  7. {
  8.    
  9.     public function five9DataProvider() {
  10.         return [
  11.             [
  12.                 [
  13.                     'first_name' => 'fozzy',
  14.                     'last_name' => 'bear',
  15.                     'number1'  => 34,
  16.                     'number2' => 42,
  17.                     'state' => 'ML',
  18.                     'zip' => 99999,
  19.                     'member_id' => 123
  20.                 ],
  21.                 [
  22.                     ["columnNumber" => 1, "fieldName" => 'first_name', "key" => false],
  23.                     ["columnNumber" => 2, "fieldName" => 'last_name', "key" => false],
  24.                     ["columnNumber" => 3, "fieldName" => 'number1', "key" => true],
  25.                     ["columnNumber" => 4, "fieldName" => 'number2', "key" => false],
  26.                     ["columnNumber" => 5, "fieldName" => 'state', "key" => false],
  27.                     ["columnNumber" => 6, "fieldName" => 'zip', "key" => false],
  28.                     ["columnNumber" => 7, "fieldName" => 'member_id', "key" => false]
  29.                    
  30.                 ],
  31.                 true
  32.             ],
  33.             [
  34.                 [
  35.                     'first_name' => 'fo', //invalid  first name
  36.                     'last_name' => 'bear',
  37.                     'number1'  => 34,
  38.                     'number2' => 42,
  39.                     'state' => 'ML',
  40.                     'zip' => 99999,
  41.                     'member_id' => 123
  42.                 ],
  43.                 [
  44.                     ["columnNumber" => 2, "fieldName" => 'last_name', "key" => false],
  45.                     ["columnNumber" => 3, "fieldName" => 'number1', "key" => true],
  46.                     ["columnNumber" => 4, "fieldName" => 'number2', "key" => false],
  47.                     ["columnNumber" => 5, "fieldName" => 'state', "key" => false],
  48.                     ["columnNumber" => 6, "fieldName" => 'zip', "key" => false],
  49.                     ["columnNumber" => 7, "fieldName" => 'member_id', "key" => false]
  50.                    
  51.                 ],
  52.                 false
  53.             ],
  54.             [
  55.                  [
  56.                     'first_name' => 'fozzy',
  57.                     'last_name' => 'be', //invalid last name
  58.                     'number1'  => 34,
  59.                     'number2' => 42,
  60.                     'state' => 'ML',
  61.                     'zip' => 99999,
  62.                     'member_id' => 123
  63.                 ],
  64.                 [
  65.                     ["columnNumber" => 1, "fieldName" => 'first_name', "key" => false],
  66.                     ["columnNumber" => 3, "fieldName" => 'number1', "key" => true],
  67.                     ["columnNumber" => 4, "fieldName" => 'number2', "key" => false],
  68.                     ["columnNumber" => 5, "fieldName" => 'state', "key" => false],
  69.                     ["columnNumber" => 6, "fieldName" => 'zip', "key" => false],
  70.                     ["columnNumber" => 7, "fieldName" => 'member_id', "key" => false]
  71.                    
  72.                 ],
  73.                 false
  74.             ],
  75.             [
  76.                 [
  77.                     'first_name' => 'fozzy',
  78.                     'last_name' => 'bear',
  79.                     'number1'  => 34,
  80.                     'number2' => 42,
  81.                     'state' => 'MLS', //invalid state
  82.                     'zip' => 99999,
  83.                     'member_id' => 123
  84.                 ],
  85.                 [
  86.                     ["columnNumber" => 1, "fieldName" => 'first_name', "key" => false],
  87.                     ["columnNumber" => 2, "fieldName" => 'last_name', "key" => false],
  88.                     ["columnNumber" => 3, "fieldName" => 'number1', "key" => true],
  89.                     ["columnNumber" => 4, "fieldName" => 'number2', "key" => false],
  90.                     ["columnNumber" => 6, "fieldName" => 'zip', "key" => false],
  91.                     ["columnNumber" => 7, "fieldName" => 'member_id', "key" => false]
  92.                    
  93.                 ],
  94.                 false
  95.             ],
  96.             [
  97.                 [
  98.                     'first_name' => 'fozzy',
  99.                     'last_name' => 'bear',
  100.                     'number1'  => 34,
  101.                     'number2' => 42,
  102.                     'state' => 'ML',
  103.                     'zip' => 999999, //invalid zip
  104.                     'member_id' => 123
  105.                 ],
  106.                 [
  107.                     ["columnNumber" => 1, "fieldName" => 'first_name', "key" => false],
  108.                     ["columnNumber" => 2, "fieldName" => 'last_name', "key" => false],
  109.                     ["columnNumber" => 3, "fieldName" => 'number1', "key" => true],
  110.                     ["columnNumber" => 4, "fieldName" => 'number2', "key" => false],
  111.                     ["columnNumber" => 5, "fieldName" => 'state', "key" => false],
  112.                     ["columnNumber" => 7, "fieldName" => 'member_id', "key" => false]
  113.                    
  114.                 ],
  115.                 false
  116.             ],
  117.             [
  118.                 [
  119.                     'first_name' => 'fozzy',
  120.                     'last_name' => 'bear',
  121.                     'number1'  => 34,
  122.                     'number2' => 42,
  123.                     'state' => 'ML',
  124.                     'zip' => 99999,
  125.                     'member_id' => '123z' //invalid member bid
  126.                 ],
  127.                 [
  128.                     ["columnNumber" => 1, "fieldName" => 'first_name', "key" => false],
  129.                     ["columnNumber" => 2, "fieldName" => 'last_name', "key" => false],
  130.                     ["columnNumber" => 3, "fieldName" => 'number1', "key" => true],
  131.                     ["columnNumber" => 4, "fieldName" => 'number2', "key" => false],
  132.                     ["columnNumber" => 5, "fieldName" => 'state', "key" => false],
  133.                     ["columnNumber" => 6, "fieldName" => 'zip', "key" => false],
  134.                    
  135.                 ],
  136.                 false
  137.             ]
  138.         ];
  139.     }
  140.     /**
  141.      * A basic functional test example.
  142.      * @dataProvider five9DataProvider
  143.      * @return void
  144.      */
  145.     public function testBasicExample($lead, $mappingValues, $valid)
  146.     {
  147.         $five9 = new Five9();
  148.         $this->assertTrue(is_array($five9->data));
  149.         $five9->ScrubArray($lead);
  150.         if ($valid) {
  151.             $this->assertEquals(count($five9->data), count($lead));
  152.         }
  153.         else {
  154.             $this->assertNotEquals(count($five9->data), count($lead));
  155.         }
  156.         $this->assertEquals($five9->mappedFields, $mappingValues);
  157.     }
  158. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement