]> BookStack Code Mirror - bookstack/commitdiff
Added additional testing for editor switching permissions 3387/head
authorDan Brown <redacted>
Sat, 23 Apr 2022 22:34:15 +0000 (23:34 +0100)
committerDan Brown <redacted>
Sat, 23 Apr 2022 22:34:15 +0000 (23:34 +0100)
tests/Entity/PageEditorTest.php

index 85f6779c38add2c5724801217f70608ffadca0f2..3fe7b33cd594a2279504a32029b521bb525f43a2 100644 (file)
@@ -178,4 +178,29 @@ class PageEditorTest extends TestCase
         $resp->assertElementNotExists("a[href*=\"${editLink}\"]");
     }
 
+    public function test_page_editor_type_switch_does_not_work_without_change_editor_permissions()
+    {
+        /** @var Page $page */
+        $page = Page::query()->first();
+        $page->html = '<h2>A Header</h2><p>Some <strong>bold</strong> content.</p>';
+        $page->save();
+
+        $resp = $this->asEditor()->get($page->getUrl('/edit?editor=markdown-stable'));
+        $resp->assertStatus(200);
+        $resp->assertElementExists('[component="wysiwyg-editor"]');
+        $resp->assertElementNotExists('[component="markdown-editor"]');
+    }
+
+    public function test_page_save_does_not_change_active_editor_without_change_editor_permissions()
+    {
+        /** @var Page $page */
+        $page = Page::query()->first();
+        $page->html = '<h2>A Header</h2><p>Some <strong>bold</strong> content.</p>';
+        $page->editor = 'wysiwyg';
+        $page->save();
+
+        $this->asEditor()->put($page->getUrl(), ['name' => $page->name, 'markdown' => '## Updated content abc']);
+        $this->assertEquals('wysiwyg', $page->refresh()->editor);
+    }
+
 }