IgnitionConfigTest.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. namespace Facade\Ignition\Tests;
  3. use Facade\Ignition\IgnitionConfig;
  4. use Illuminate\Container\Container;
  5. class IgnitionConfigTest extends TestCase
  6. {
  7. /** @test */
  8. public function it_enables_runnable_solutions_in_debug_mode()
  9. {
  10. $this->app['config']['app.debug'] = true;
  11. $config = new IgnitionConfig([]);
  12. $this->assertTrue($config->getEnableRunnableSolutions());
  13. }
  14. /** @test */
  15. public function it_disables_runnable_solutions_in_production_mode()
  16. {
  17. $this->app['config']['app.debug'] = false;
  18. $config = new IgnitionConfig([]);
  19. $this->assertFalse($config->getEnableRunnableSolutions());
  20. }
  21. /** @test */
  22. public function it_prioritizes_config_value_over_debug_mode()
  23. {
  24. $this->app['config']['app.debug'] = true;
  25. $config = new IgnitionConfig([
  26. 'enable_runnable_solutions' => false,
  27. ]);
  28. $this->assertFalse($config->getEnableRunnableSolutions());
  29. }
  30. /** @test */
  31. public function it_disables_share_report_when_app_has_not_finished_booting()
  32. {
  33. // Create an app but don't run the bootstrappers, so it is in booting state
  34. $bootingApp = $this->resolveApplication();
  35. $this->resolveApplicationBindings($bootingApp);
  36. $this->resolveApplicationExceptionHandler($bootingApp);
  37. $this->resolveApplicationCore($bootingApp);
  38. $this->resolveApplicationConfiguration($bootingApp);
  39. $this->resolveApplicationHttpKernel($bootingApp);
  40. $this->resolveApplicationConsoleKernel($bootingApp);
  41. Container::setInstance($bootingApp);
  42. $config = new IgnitionConfig([]);
  43. $this->assertFalse($config->getEnableShareButton());
  44. }
  45. }