diff --git a/honeypot.module b/honeypot.module
index f7c7e19..14d1127 100644
--- a/honeypot.module
+++ b/honeypot.module
@@ -150,6 +150,7 @@ function honeypot_add_form_protection(&$form, FormStateInterface $form_state, $o
       // TODO D8 - Use DIC? See: http://drupal.org/node/1539454
       // Should this now set 'omit_vary_cookie' instead?
       Drupal::service('page_cache_kill_switch')->trigger();
+      $form['#cache']['max-age'] = 0;
     }
   }
 
diff --git a/src/Tests/HoneypotFormCacheTest.php b/src/Tests/HoneypotFormCacheTest.php
index dd31775..1277385 100644
--- a/src/Tests/HoneypotFormCacheTest.php
+++ b/src/Tests/HoneypotFormCacheTest.php
@@ -8,6 +8,8 @@
 namespace Drupal\honeypot\Tests;
 
 use Drupal\Core\Url;
+use Drupal\comment\Tests\CommentTestTrait;
+use Drupal\comment\Plugin\Field\FieldType\CommentItemInterface;
 use Drupal\contact\Entity\ContactForm;
 use Drupal\simpletest\WebTestBase;
 use Drupal\user\Entity\Role;
@@ -20,13 +22,15 @@ use Drupal\user\RoleInterface;
  */
 class HoneypotFormCacheTest extends WebTestBase {
 
+  use CommentTestTrait;
   /**
    * Modules to enable.
    *
    * @var array
    */
-  public static $modules = array('honeypot', 'contact');
+  public static $modules = array('honeypot', 'node', 'comment', 'contact');
 
+  protected $node;
   /**
    * {@inheritdoc}
    */
@@ -42,6 +46,19 @@ class HoneypotFormCacheTest extends WebTestBase {
     $honeypot_config->set('protect_all_forms', TRUE);
     $honeypot_config->set('log', FALSE);
     $honeypot_config->save();
+
+    // Set up other required configuration.
+    $user_config = \Drupal::configFactory()->getEditable('user.settings');
+    $user_config->set('verify_mail', TRUE);
+    $user_config->set('register', USER_REGISTER_VISITORS);
+    $user_config->save();
+
+    // Create an Article node type.
+    if ($this->profile != 'standard') {
+      $this->drupalCreateContentType(['type' => 'article', 'name' => 'Article']);
+      // Create comment field on article.
+      $this->addDefaultCommentField('node', 'article');
+    }
   }
 
   /**
@@ -81,4 +98,37 @@ class HoneypotFormCacheTest extends WebTestBase {
     $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT', 'Page was cached.');
   }
 
+  /**
+   * Test enabling and disabling of page cache based on time limit settings.
+   */
+  public function testCacheCommentForm() {
+    // Set up example node.
+    $this->node = $this->drupalCreateNode([
+      'type' => 'article',
+      'comment' => CommentItemInterface::OPEN,
+    ]);
+
+    // Give anonymous users permission to post comments.
+    Role::load(RoleInterface::ANONYMOUS_ID)->grantPermission('post comments')->grantPermission('access comments')
+     ->save();
+
+    // Prime the cache.
+    $this->drupalGet('node/' . $this->node->id());
+
+    // Test on cache header with time limit enabled, cache should miss.
+    $this->drupalGet('node/' . $this->node->id());
+    $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), '', 'Page was not cached.');
+
+    // Disable time limit.
+    $honeypot_config = \Drupal::configFactory()->getEditable('honeypot.settings')->set('time_limit', 0)->save();
+
+    // Prime the cache.
+    $this->drupalGet('node/' . $this->node->id());
+
+    // Test on cache header with time limit disabled, cache should hit.
+    $this->drupalGet('node/' . $this->node->id());
+    $this->assertEqual($this->drupalGetHeader('X-Drupal-Cache'), 'HIT', 'Page was cached.');
+
+  }
+
 }
