Вы можете создать TestApplication (в src/test/java
), который тривиально расширяет ваш фактический класс приложения Spring Boot и зависит от вашего тестового компонента. Затем попросите SpringBootTest загрузить ваше TestApplication вместо производственного приложения.
Пример TestApplication:
@DependsOn("beanB")
@Configuration
@Import(YourApplication.class)
public class TestApplication {}
Пример класса тестирования:
@RunWith(SpringRunner.class)
@SpringBootTest(classes = TestApplication.class)
public class YourApplicationTests {
...
AFAIK, для этого нет ловушки, поскольку темы используют HTML, который не будет обрабатываться WordPress.
Однако вы можете использовать буферизацию вывода чтобы получить окончательный HTML:
<?php
// example from php.net
function callback($buffer) {
// replace all the apples with oranges
return (str_replace("apples", "oranges", $buffer));
}
ob_start("callback");
?>
<html><body>
<p>It's like comparing apples to oranges.</p>
</body></html>
<?php ob_end_flush(); ?>
/* output:
<html><body>
<p>It's like comparing oranges to oranges.</p>
</body></html>
*/
Вы можете попробовать поискать в файле wp-includes / formatting.php. Например, функция wpautop. Если вы ищете что-то сделать со всей страницей, посмотрите на плагин Super Cache. Это записывает последнюю веб-страницу в файл для кеширования. Просмотр того, как работает этот плагин, может дать вам некоторые идеи.
Действительно, недавно в списке рассылки WP-Hackers была дискуссия на тему полной модификации страницы, и кажется, что консенсус заключался в том, что буферизация вывода с ob_start () и т. д. было единственным реальным решением. Было также несколько дискуссий о его плюсах и минусах: http://groups.google.com/group/wp-hackers/browse_thread/thread/e1a6f4b29169209a#
Подводя итог: