public function testPostUpdated()
 {
     $doc = new Core\Doc();
     $detail = $doc->detail(1);
     $post = array();
     //WP_Post
     $item = $doc->postToOpenSearchObject($post);
     $docsToUpload[] = $item;
     if ($item) {
         if (empty($detail)) {
             $result = $doc->add($docsToUpload, 'main');
         } else {
             $result = $doc->update($docsToUpload, 'main');
         }
     }
     $this->assertCount(2, $result);
     $this->assertJson($result['jsonData']);
 }
 public function testAdd()
 {
     $doc = new Core\Doc();
     $tableName = 'main';
     $docsArr = $doc->getDoces($tableName, 0, 10);
     $docToUpload = array();
     foreach ($docsArr as $key => $value) {
         $this->assertArrayHasKey('ID', $value);
         $this->assertArrayHasKey('post_date', $value);
         $this->assertArrayHasKey('post_title', $value);
         $this->assertArrayHasKey('post_content', $value);
         $this->assertArrayHasKey('post_excerpt', $value);
         $this->assertArrayHasKey('post_name', $value);
         $this->assertArrayHasKey('post_modified', $value);
         $this->assertArrayHasKey('post_parent', $value);
         $this->assertArrayHasKey('menu_order', $value);
         $this->assertArrayHasKey('post_type', $value);
         $this->assertArrayHasKey('guid', $value);
         $this->assertArrayHasKey('featured_image', $value);
         $this->assertArrayHasKey('post_author', $value);
         $this->assertArrayHasKey('author', $value);
         $this->assertArrayHasKey('categories', $value);
         $this->assertArrayHasKey('tags', $value);
         $item = array();
         $item['cmd'] = 'add';
         $item["fields"] = array('object_id' => $value['ID'], 'date' => $value['post_date'], 'title' => $value['post_title'], 'content' => $value['post_content'], 'excerpt' => $value['post_excerpt'], 'slug' => $value['post_name'], 'modified' => $value['post_modified'], 'parent' => $value['post_parent'], 'menu_order' => $value['menu_order'], 'type' => $value['post_type'], 'permalink' => $value['guid'], 'featured_image' => $value['featured_image'], 'author_id' => $value['post_author'], 'author' => $value['author'], 'categories' => $value['categories'], 'tags' => $value['tags']);
         array_push($docToUpload, $item);
     }
     $result = $doc->add($docToUpload, $tableName);
     $this->assertArrayHasKey('totalIndexed', $result);
     $this->assertArrayHasKey('jsonData', $result);
     $this->assertCount($result['totalIndexed'], $docToUpload);
     $json = json_encode($docToUpload);
     $expected = $this->getDocHandler()->add($json, $tableName);
     $this->assertEquals($expected, $result['jsonData']);
 }