This repository has been archived by the owner on Sep 16, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 865
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #288 from josh-rathke/master
Wordpress Coding Standards & Unit Testing Setup via Travis CI
- Loading branch information
Showing
33 changed files
with
635 additions
and
503 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,110 @@ | ||
# Travis CI (MIT License) configuration file for the FoundationPress WordPress theme | ||
# @link https://travis-ci.org/ | ||
|
||
# For use with the FoundationPress WordPress theme | ||
# @link https://github.com/olefredrik/FoundationPress | ||
|
||
# Declare project language. | ||
# @link http://about.travis-ci.org/docs/user/languages/php/ | ||
language: php | ||
|
||
# Declare versions of PHP to use. Use one decimal max. | ||
php: | ||
# aliased to a recent 5.5.x version | ||
- "5.5" | ||
# aliased to a recent 5.4.x version | ||
- "5.4" | ||
# aliased to a recent 5.3.x version | ||
- "5.3" | ||
# Current $required_php_version for WordPress: 5.2.4 | ||
- "5.2" | ||
|
||
# Declare which versions of WordPress to test against. | ||
# Also declare whether or not to test in Multisite. | ||
env: | ||
# Trunk | ||
# @link https://github.com/WordPress/WordPress | ||
- WP_VERSION=master WP_MULTISITE=0 | ||
# WordPress 4.1 | ||
# @link https://github.com/WordPress/WordPress/tree/4.1-branch | ||
- WP_VERSION=4.1 WP_MULTISITE=0 | ||
# WordPress 4.0 | ||
# @link https://github.com/WordPress/WordPress/tree/4.0-branch | ||
- WP_VERSION=4.0 WP_MULTISITE=0 | ||
|
||
# Declare 5.6 beta in test matrix. | ||
# @link https://buddypress.trac.wordpress.org/ticket/5620 | ||
# @link http://docs.travis-ci.com/user/build-configuration/ | ||
matrix: | ||
include: | ||
- php: 5.6 | ||
env: WP_VERSION=master | ||
allow_failures: | ||
- php: 5.6 | ||
fast_finish: true | ||
|
||
# Use this to prepare the system to install prerequisites or dependencies. | ||
# e.g. sudo apt-get update. | ||
# Failures in this section will result in build status 'errored'. | ||
# before_install: | ||
|
||
# Use this to prepare your build for testing. | ||
# e.g. copy database configurations, environment variables, etc. | ||
# Failures in this section will result in build status 'errored'. | ||
before_script: | ||
# Set up WordPress installation. | ||
- export WP_DEVELOP_DIR=/tmp/wordpress/ | ||
- mkdir -p $WP_DEVELOP_DIR | ||
# Use the Git mirror of WordPress. | ||
- git clone --depth=1 --branch="$WP_VERSION" git://develop.git.wordpress.org/ $WP_DEVELOP_DIR | ||
# Set up theme information. | ||
- theme_slug=$(basename $(pwd)) | ||
- theme_dir=$WP_DEVELOP_DIR/src/wp-content/themes/$theme_slug | ||
- cd .. | ||
- mv $theme_slug $theme_dir | ||
# Set up WordPress configuration. | ||
- cd $WP_DEVELOP_DIR | ||
- echo $WP_DEVELOP_DIR | ||
- cp wp-tests-config-sample.php wp-tests-config.php | ||
- sed -i "s/youremptytestdbnamehere/wordpress_test/" wp-tests-config.php | ||
- sed -i "s/yourusernamehere/root/" wp-tests-config.php | ||
- sed -i "s/yourpasswordhere//" wp-tests-config.php | ||
# Create WordPress database. | ||
- mysql -e 'CREATE DATABASE wordpress_test;' -uroot | ||
# Install CodeSniffer for WordPress Coding Standards checks. | ||
- git clone https://github.com/squizlabs/PHP_CodeSniffer.git php-codesniffer | ||
# Install WordPress Coding Standards. | ||
- git clone https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git wordpress-coding-standards | ||
# Hop into CodeSniffer directory. | ||
- cd php-codesniffer | ||
# Set install path for WordPress Coding Standards | ||
# @link https://github.com/squizlabs/PHP_CodeSniffer/blob/4237c2fc98cc838730b76ee9cee316f99286a2a7/CodeSniffer.php#L1941 | ||
- scripts/phpcs --config-set installed_paths ../wordpress-coding-standards | ||
# Hop into themes directory. | ||
- cd $theme_dir | ||
# After CodeSniffer install you should refresh your path. | ||
- phpenv rehash | ||
|
||
# Run test script commands. | ||
# Default is specific to project language. | ||
# All commands must exit with code 0 on success. Anything else is considered failure. | ||
script: | ||
# Search for PHP syntax errors. | ||
- find . \( -name '*.php' \) -exec php -lf {} \; | ||
# WordPress Coding Standards | ||
# @link https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards | ||
# @link http://pear.php.net/package/PHP_CodeSniffer/ | ||
# -p flag: Show progress of the run. | ||
# -s flag: Show sniff codes in all reports. | ||
# -v flag: Print verbose output. | ||
# -n flag: Do not print warnings (shortcut for --warning-severity=0) | ||
# --standard: Use WordPress as the standard. | ||
# --extensions: Only sniff PHP files. | ||
# --ignore: Ignore these files/directories | ||
- $WP_DEVELOP_DIR/php-codesniffer/scripts/phpcs -p -s -v -n . --standard=./codesniffer.ruleset.xml --extensions=php --ignore=./bower_components/ | ||
|
||
|
||
# Receive notifications for build results. | ||
# @link http://docs.travis-ci.com/user/notifications/#Email-notifications | ||
notifications: | ||
email: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
<?xml version="1.0"?> | ||
<ruleset name="FoundationPress Theme, Wordpress Coding Standards Configuration"> | ||
<!-- See https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-ruleset.xml --> | ||
<!-- See https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards/blob/develop/WordPress-Core/ruleset.xml --> | ||
|
||
<!-- Set a description for this ruleset. --> | ||
<description>A series of tests used to check FoundationPress for compliance with Wordpress Coding Standards</description> | ||
|
||
<!-- Include the WordPress ruleset, with exclusions. --> | ||
<rule ref="WordPress"> | ||
<exclude name="Generic.WhiteSpace.ScopeIndent.Incorrect" /> | ||
<exclude name="PEAR.Functions.FunctionCallSignature.Indent" /> | ||
<exclude name="Generic.WhiteSpace.ScopeIndent.IncorrectExact" /> | ||
|
||
<exclude name="WordPress.XSS.EscapeOutput" /> | ||
<exclude name="WordPress.WhiteSpace.ScopeIndent.Incorrect" /> | ||
<exclude name="WordPress.Variables.GlobalVariables" /> | ||
</rule> | ||
</ruleset> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,95 +1,94 @@ | ||
<?php | ||
if ( have_comments() ) : | ||
if( (is_page() || is_single()) && (!is_home() && !is_front_page()) ) : | ||
<?php | ||
if ( have_comments() ) : | ||
if ( (is_page() || is_single()) && ( ! is_home() && ! is_front_page()) ) : | ||
?> | ||
<section id="comments"><?php | ||
<section id="comments"><?php | ||
|
||
|
||
wp_list_comments( | ||
|
||
array( | ||
'walker' => new FoundationPress_comments(), | ||
'walker' => new FoundationPress_comments(), | ||
'max_depth' => '', | ||
'style' => 'ol', | ||
'callback' => null, | ||
'end-callback' => null, | ||
'type' => 'all', | ||
'reply_text' => __('Reply', 'FoundationPress'), | ||
'reply_text' => __( 'Reply', 'FoundationPress' ), | ||
'page' => '', | ||
'per_page' => '', | ||
'avatar_size' => 48, | ||
'reverse_top_level' => null, | ||
'reverse_children' => '', | ||
'format' => 'html5', | ||
'short_ping' => false, | ||
'echo' => true, | ||
'moderation' => __('Your comment is awaiting moderation.', 'FoundationPress'), | ||
'format' => 'html5', | ||
'short_ping' => false, | ||
'echo' => true, | ||
'moderation' => __( 'Your comment is awaiting moderation.', 'FoundationPress' ), | ||
) | ||
); | ||
|
||
?> | ||
|
||
</section> | ||
<?php | ||
<?php | ||
endif; | ||
endif; | ||
?> | ||
|
||
<?php | ||
// Do not delete these lines | ||
if (!empty($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME'])) | ||
die (__('Please do not load this page directly. Thanks!', 'FoundationPress')); | ||
if ( ! empty( sanitize_file_name( $_SERVER['SCRIPT_FILENAME'] ) ) && 'comments.php' == basename( sanitize_file_name( $_SERVER['SCRIPT_FILENAME'] ) ) ) { | ||
die (__( 'Please do not load this page directly. Thanks!', 'FoundationPress' )); } | ||
|
||
if ( post_password_required() ) { ?> | ||
<section id="comments"> | ||
<div class="notice"> | ||
<p class="bottom"><?php _e('This post is password protected. Enter the password to view comments.', 'FoundationPress'); ?></p> | ||
<p class="bottom"><?php _e( 'This post is password protected. Enter the password to view comments.', 'FoundationPress' ); ?></p> | ||
</div> | ||
</section> | ||
<?php | ||
return; | ||
} | ||
?> | ||
|
||
<?php | ||
if ( comments_open() ) : | ||
if( (is_page() || is_single()) && (!is_home() && !is_front_page()) ) : | ||
<?php | ||
if ( comments_open() ) : | ||
if ( (is_page() || is_single()) && ( ! is_home() && ! is_front_page()) ) : | ||
?> | ||
<section id="respond"> | ||
<h3><?php comment_form_title( __('Leave a Reply', 'FoundationPress'), __('Leave a Reply to %s', 'FoundationPress') ); ?></h3> | ||
<h3><?php comment_form_title( __( 'Leave a Reply', 'FoundationPress' ), __( 'Leave a Reply to %s', 'FoundationPress' ) ); ?></h3> | ||
<p class="cancel-comment-reply"><?php cancel_comment_reply_link(); ?></p> | ||
<?php if ( get_option('comment_registration') && !is_user_logged_in() ) : ?> | ||
<p><?php printf( __('You must be <a href="%s">logged in</a> to post a comment.', 'FoundationPress'), wp_login_url( get_permalink() ) ); ?></p> | ||
<?php if ( get_option( 'comment_registration' ) && ! is_user_logged_in() ) : ?> | ||
<p><?php printf( __( 'You must be <a href="%s">logged in</a> to post a comment.', 'FoundationPress' ), wp_login_url( get_permalink() ) ); ?></p> | ||
<?php else : ?> | ||
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform"> | ||
<form action="<?php echo get_option( 'siteurl' ); ?>/wp-comments-post.php" method="post" id="commentform"> | ||
<?php if ( is_user_logged_in() ) : ?> | ||
<p><?php printf(__('Logged in as <a href="%s/wp-admin/profile.php">%s</a>.', 'FoundationPress'), get_option('siteurl'), $user_identity); ?> <a href="<?php echo wp_logout_url(get_permalink()); ?>" title="<?php __('Log out of this account', 'FoundationPress'); ?>"><?php _e('Log out »', 'FoundationPress'); ?></a></p> | ||
<p><?php printf( __( 'Logged in as <a href="%s/wp-admin/profile.php">%s</a>.', 'FoundationPress' ), get_option( 'siteurl' ), $user_identity ); ?> <a href="<?php echo wp_logout_url( get_permalink() ); ?>" title="<?php __( 'Log out of this account', 'FoundationPress' ); ?>"><?php _e( 'Log out »', 'FoundationPress' ); ?></a></p> | ||
<?php else : ?> | ||
<p> | ||
<label for="author"><?php _e('Name', 'FoundationPress'); if ($req) _e(' (required)', 'FoundationPress'); ?></label> | ||
<input type="text" class="five" name="author" id="author" value="<?php echo esc_attr($comment_author); ?>" size="22" tabindex="1" <?php if ($req) echo "aria-required='true'"; ?>> | ||
<label for="author"><?php _e( 'Name', 'FoundationPress' ); if ( $req ) { _e( ' (required)', 'FoundationPress' ); } ?></label> | ||
<input type="text" class="five" name="author" id="author" value="<?php echo esc_attr( $comment_author ); ?>" size="22" tabindex="1" <?php if ( $req ) { echo "aria-required='true'"; } ?>> | ||
</p> | ||
<p> | ||
<label for="email"><?php _e('Email (will not be published)', 'FoundationPress'); if ($req) _e(' (required)', 'FoundationPress'); ?></label> | ||
<input type="text" class="five" name="email" id="email" value="<?php echo esc_attr($comment_author_email); ?>" size="22" tabindex="2" <?php if ($req) echo "aria-required='true'"; ?>> | ||
<label for="email"><?php _e( 'Email (will not be published)', 'FoundationPress' ); if ( $req ) { _e( ' (required)', 'FoundationPress' ); } ?></label> | ||
<input type="text" class="five" name="email" id="email" value="<?php echo esc_attr( $comment_author_email ); ?>" size="22" tabindex="2" <?php if ( $req ) { echo "aria-required='true'"; } ?>> | ||
</p> | ||
<p> | ||
<label for="url"><?php _e('Website', 'FoundationPress'); ?></label> | ||
<input type="text" class="five" name="url" id="url" value="<?php echo esc_attr($comment_author_url); ?>" size="22" tabindex="3"> | ||
<label for="url"><?php _e( 'Website', 'FoundationPress' ); ?></label> | ||
<input type="text" class="five" name="url" id="url" value="<?php echo esc_attr( $comment_author_url ); ?>" size="22" tabindex="3"> | ||
</p> | ||
<?php endif; ?> | ||
<p> | ||
<label for="comment"><?php _e('Comment', 'FoundationPress'); ?></label> | ||
<label for="comment"><?php _e( 'Comment', 'FoundationPress' ); ?></label> | ||
<textarea name="comment" id="comment" tabindex="4"></textarea> | ||
</p> | ||
<p id="allowed_tags" class="small"><strong>XHTML:</strong> <?php _e('You can use these tags:','FoundationPress'); ?> <code><?php echo allowed_tags(); ?></code></p> | ||
<p><input name="submit" class="button" type="submit" id="submit" tabindex="5" value="<?php esc_attr_e('Submit Comment', 'FoundationPress'); ?>"></p> | ||
<p id="allowed_tags" class="small"><strong>XHTML:</strong> <?php _e( 'You can use these tags:','FoundationPress' ); ?> <code><?php echo allowed_tags(); ?></code></p> | ||
<p><input name="submit" class="button" type="submit" id="submit" tabindex="5" value="<?php esc_attr_e( 'Submit Comment', 'FoundationPress' ); ?>"></p> | ||
<?php comment_id_fields(); ?> | ||
<?php do_action('comment_form', $post->ID); ?> | ||
<?php do_action( 'comment_form', $post->ID ); ?> | ||
</form> | ||
<?php endif; // If registration required and not logged in ?> | ||
</section> | ||
<?php | ||
<?php | ||
endif; // if you delete this the sky will fall on your head | ||
endif; // if you delete this the sky will fall on your head | ||
endif; // if you delete this the sky will fall on your head | ||
?> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,15 @@ | ||
</section> | ||
<footer class="row"> | ||
<?php do_action('foundationPress_before_footer'); ?> | ||
<?php dynamic_sidebar("footer-widgets"); ?> | ||
<?php do_action('foundationPress_after_footer'); ?> | ||
<?php do_action( 'foundationPress_before_footer' ); ?> | ||
<?php dynamic_sidebar( 'footer-widgets' ); ?> | ||
<?php do_action( 'foundationPress_after_footer' ); ?> | ||
</footer> | ||
<a class="exit-off-canvas"></a> | ||
|
||
<?php do_action('foundationPress_layout_end'); ?> | ||
<?php do_action( 'foundationPress_layout_end' ); ?> | ||
</div> | ||
</div> | ||
<?php wp_footer(); ?> | ||
<?php do_action('foundationPress_before_closing_body'); ?> | ||
<?php do_action( 'foundationPress_before_closing_body' ); ?> | ||
</body> | ||
</html> |
Oops, something went wrong.