text: <?php
  
  namespace SilverStripe\Control\Tests;
  
  use SilverStripe\Core\Injector\Injector;
  use SilverStripe\Core\Kernel;
  use SilverStripe\Control\Tests\FlushMiddlewareTest\TestFlushable;
  use SilverStripe\Dev\FunctionalTest;
  
  class FlushMiddlewareTest extends FunctionalTest
  {
      /**
       * Assert that classes that implement flushable are called
       */
      public function testImplementorsAreCalled()
      {
          TestFlushable::$flushed = false;
  
          Injector::inst()->get(Kernel::class)->boot(true);
          $this->get('/');
          $this->assertTrue(TestFlushable::$flushed);
  
          // reset the kernel Flush flag
          Injector::inst()->get(Kernel::class)->boot();
      }
  }
  