diff --git a/tests/apachesolr_base.test b/tests/apachesolr_base.test
index 3fb5c15..e11afe3 100644
--- a/tests/apachesolr_base.test
+++ b/tests/apachesolr_base.test
@@ -385,7 +385,6 @@ class DrupalSolrOfflineSearchPagesWebTestCase extends DrupalSolrOfflineWebTestCa
     $query = apachesolr_current_query('DummySolr');
     $this->assertEqual($query->getParam('rows'), 5, 'Passed in rows param overrode default');
   }
-
 }
 
 class DrupalSolrNodeTestCase extends DrupalWebTestCase {
@@ -419,17 +418,68 @@ class DrupalSolrNodeTestCase extends DrupalWebTestCase {
 
     $this->drupalLogin($admin_user);
 
+    // enable our bundles to be indexed
+    apachesolr_index_set_bundles('solr', 'node', array('page', 'article'));
+    entity_info_cache_clear();
+    apachesolr_environments_clear_cache();
+
     //Create 2 nodes
     $edit = array();
+    // Create article node.
     $edit['uid'] = $admin_user->uid;
-    $node = $this->drupalCreateNode($edit);
+    $edit['type'] = 'article';
+    $edit['title'] = $this->randomName(16);
+    $article = $this->drupalCreateNode($edit);
+    $this->assertTrue(is_object($article) && isset($article->nid), t('Article type node has been created.'));
+    // Check that the nodes have been created.
+    $article = $this->drupalGetNodeByTitle($edit['title']);
+    $this->assertTrue($article, t('Created article node found in database.'));
+
+    // Create page node.
+    $edit['uid'] = $admin_user->uid;
+    $edit['type'] = 'page';
+    $edit['title'] = $this->randomName(16);
+    $page = $this->drupalCreateNode($edit);
+    $this->assertTrue(is_object($page) && isset($page->nid), t('Page type node has been created.'));
+    $page = $this->drupalGetNodeByTitle($edit['title']);
+    $this->assertTrue($page, t('Created page node found in database.'));
+
+
+    $indexer_table = apachesolr_get_indexer_table('node');
+    $query = db_select($indexer_table, 'aien')
+      ->fields('aien', array('entity_id', 'status'));
+    $nodes = $query->execute()->fetchAllAssoc('entity_id');
+
+    // Check that both nodes have status 1
+    foreach ($nodes as $node) {
+      $this->assertEqual($node->status, 1, t('Node @entity_id has status 1', array('@entity_id' => $node->entity_id)));
+    }
 
-    $this->drupalGet('admin/content/node');
-    // Remove the same node
-    $this->clickLink(t('delete'));
-    $this->assertText(t('Are you sure you want to delete'), t('Delete confirmation page was succesfully loaded'));
-    $this->drupalPost($this->getUrl(), array(), t('Delete'));
-    $this->assertResponse(200);
+    // Delete the nodes
+    $this->drupalPost('node/' . $article->nid . '/delete', array(), t('Delete'));
+    $this->drupalPost('node/' . $page->nid . '/delete', array(), t('Delete'));
+
+    // apachesolr_entity_delete
+    // check if the entity delete does its work. It should have set the
+    // status to 0 so it will be deleted when solr comes online    $indexer_table = apachesolr_get_indexer_table('node');
+    $indexer_table = apachesolr_get_indexer_table('node');
+    $query = db_select($indexer_table, 'aien')
+      ->fields('aien', array('entity_id', 'status'));
+    $nodes = $query->execute()->fetchAllAssoc('entity_id');
+
+    // Check that both nodes have status 0, they are pending to be deleted
+    foreach ($nodes as $node) {
+      debug($node);
+      $this->assertEqual($node->status, 0, t('Node @entity_id has status 0', array('@entity_id' => $node->entity_id)));
+    }
+
+    // Check that all the nodes have been deleted.
+    $count = db_select('node', 'n')
+      ->condition('n.nid', array($article->nid, $page->nid), 'IN')
+      ->countQuery()
+      ->execute()
+      ->fetchField();
+    $this->assertEqual($count, 0, t('All created nodes have been deleted.'));
   }
 }
 
