[bugfix] Check for {{bots}}/{{nobots}} in Page.text setter


[bugfix] Check for {{bots}}/{{nobots}} in Page.text setter

This reverts fdfae7bb446a6 and moves early check into BasePage.text setter

  • revert fdfae7bb446a6 change for BasePage
  • check for botMayEdit in text setter first
  • cache botMayEdit result
  • added a test which assigns a text first without reading from api
  • update old tests with those steps:
    • call text deleter to remove "_raw_extracted_templates" cache
    • add template to "_text" attribute directly to bypass the botMayEdit check
    • make the test
    • clear the botMayEdit cache
  • patch unittest for "dry" option using a DryPage which prevents api call with botMayEdit method.

Bug: T267770
Change-Id: I986d3e2b3828266442cc9127dd792196d585b532