Skip to content
wiki.fftac.org

Message Board Tests - Source Excerpt 03

Back to Message Board Tests

Summary

This source excerpt preserves a bounded section of Antichrist.net/wp-content/plugins/antichrist-message-board/tests/message-board-tests.php so readers can inspect the evidence without opening the full source file.

**Source path:** Antichrist.net/wp-content/plugins/antichrist-message-board/tests/message-board-tests.php

wp_set_current_user( 0 );
		$es_html = acnmb_test_with_locale(
			'es-US',
			function () {
				return do_shortcode( '[acn_message_board]' );
			}
		);
		$es_text = acnmb_test_rendered_text( $es_html );
		acnmb_test_assert( false !== strpos( $es_text, 'Foro' ), 'Spanish board title missing.' );
		acnmb_test_assert( false !== strpos( $es_text, 'Discusión general' ), 'Spanish category missing.' );
		acnmb_test_assert( false === strpos( $es_text, 'Message Board' ), 'Spanish board leaked English title.' );
		acnmb_test_assert( false === strpos( $es_text, 'General Discussion' ), 'Spanish board leaked English category.' );
		acnmb_test_assert( false === strpos( $es_text, $records['en-US']['title'] ), 'Spanish board leaked English topic.' );
		acnmb_test_assert( false === strpos( $es_text, $records['fr-FR']['title'] ), 'Spanish board leaked French topic.' );
		acnmb_test_assert( false === strpos( $es_text, $records['zh-CN']['title'] ), 'Spanish board leaked Chinese topic.' );

		$fr_html = acnmb_test_with_locale(
			'fr-FR',
			function () {
				return do_shortcode( '[acn_message_board]' );
			}
		);
		$fr_text = acnmb_test_rendered_text( $fr_html );
		acnmb_test_assert( false !== strpos( $fr_text, 'Forum' ), 'French board title missing.' );
		acnmb_test_assert( false !== strpos( $fr_text, 'Discussion generale' ), 'French category missing.' );
		acnmb_test_assert( false === strpos( $fr_text, 'Message Board' ), 'French board leaked English title.' );
		acnmb_test_assert( false === strpos( $fr_text, 'General Discussion' ), 'French board leaked English category.' );
		acnmb_test_assert( false === strpos( $fr_text, 'Foro' ), 'French board leaked Spanish title.' );
		acnmb_test_assert( false === strpos( $fr_text, $records['en-US']['title'] ), 'French board leaked English topic.' );
		acnmb_test_assert( false === strpos( $fr_text, $records['es-US']['title'] ), 'French board leaked Spanish topic.' );
		acnmb_test_assert( false === strpos( $fr_text, $records['zh-CN']['title'] ), 'French board leaked Chinese topic.' );

		$zh_html = acnmb_test_with_locale(
			'zh-CN',
			function () {
				return do_shortcode( '[acn_message_board]' );
			}
		);
		$zh_text = acnmb_test_rendered_text( $zh_html );
		acnmb_test_assert( false !== strpos( $zh_text, '留言板' ), 'Chinese board title missing.' );
		acnmb_test_assert( false !== strpos( $zh_text, '综合讨论' ), 'Chinese category missing.' );
		acnmb_test_assert( false === strpos( $zh_text, 'Message Board' ), 'Chinese board leaked English title.' );
		acnmb_test_assert( false === strpos( $zh_text, 'General Discussion' ), 'Chinese board leaked English category.' );
		acnmb_test_assert( false === strpos( $zh_text, 'Foro' ), 'Chinese board leaked Spanish title.' );
		acnmb_test_assert( false === strpos( $zh_text, $records['en-US']['title'] ), 'Chinese board leaked English topic.' );
		acnmb_test_assert( false === strpos( $zh_text, $records['es-US']['title'] ), 'Chinese board leaked Spanish topic.' );
		acnmb_test_assert( false === strpos( $zh_text, $records['fr-FR']['title'] ), 'Chinese board leaked French topic.' );
	}
);

foreach ( $GLOBALS['acnmb_cleanup_comments'] as $comment_id ) {
	wp_delete_comment( $comment_id, true );
}
foreach ( $GLOBALS['acnmb_cleanup_posts'] as $post_id ) {
	wp_delete_post( $post_id, true );
}
if ( ! empty( $GLOBALS['acnmb_cleanup_users'] ) ) {
	require_once ABSPATH . 'wp-admin/includes/user.php';
	foreach ( $GLOBALS['acnmb_cleanup_users'] as $user_id ) {
		wp_delete_user( $user_id );
	}
}
foreach ( $GLOBALS['acnmb_cleanup_terms'] as $term_id ) {
	wp_delete_term( $term_id, ACNMB_CATEGORY_TAXONOMY );
}

if ( ! empty( $GLOBALS['acnmb_failures'] ) ) {
	fwrite( STDERR, "\nMessage board unit tests failed:\n- " . implode( "\n- ", $GLOBALS['acnmb_failures'] ) . "\n" );
	exit( 1 );
}

echo "All Antichrist.net message board unit tests passed.\n";