Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add content tests in TestDdevFullSiteSetup, fixes #677 #1155

Merged
merged 30 commits into from Oct 8, 2018

Conversation

rfay
Copy link
Member

@rfay rfay commented Oct 4, 2018

The Problem/Issue/Bug:

We have long had a set of tests that carefully does a ddev start and ddev import-db and `ddev import-files on several CMSs... but never checks to see if each CMS responds appropriately. OP#677.

How this PR Solves The Problem:

Since this has been neglected for some time there are a few things that will have to be done for basic functionality, and a few that should probably be done just as an update mechanism.

  • Drupal 6 project needs to use php 5.6. It currently uses php 7.0, so can't work. This may be done with an additional app.Config() probably.
  • Backdrop doesn't come up at all because our test setup doesn't have a config directory
  • TYPO3 doesn't work right because we're using a not-yet-installed codebase.
  • The TYPO3 test should use TYPO3 v9 LTS, with a full db, not just the backend.
  • We are going to detect Wordpress in a subdirectory, so we need that as an additional test CMS IMO. @alkymst recommends using Bedrock to stand in for this technique.
  • Improve healthcheck behavior (and output) for ddev-webserver. It now shows in docker inspect what the actual healthcheck issue is. We now check for /var/www/html being "sane" and for mysql being accessible.
  • Add php-fpm slowlog reporting to ddev-webserver
  • Add mariadb slowlog output in ddev-dbserver

Additional changes:

  • ddevapp_test.go tests are adjusted to assume that no project is running (and they start it themselves) and they leave the project Down (with database deleted).

Manual Testing Instructions:

Mostly this will be the automated test, but there are some features to manually test:

  • Use docker inspect to view the health status of a starting webserver. It shows the actual status of 3 different things.

Automated Testing Overview:

  • Add TestDdevFullSiteSetup() to import-db, import-files, and check a dynamic URL.

Related Issue Link(s):

OP #677

Release/Deployment notes:

@rfay rfay added this to the v1.3.0 milestone Oct 4, 2018
@rfay rfay self-assigned this Oct 4, 2018
@rfay rfay requested a review from andrewfrench October 4, 2018 21:25
@rfay rfay force-pushed the 20181004_check_cms_content branch 2 times, most recently from e7e7344 to 4070753 Compare October 6, 2018 23:34
Copy link
Contributor

@andrewfrench andrewfrench left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks great and adds a lot of confidence in behavior that we didn't have before. Will the WordPress-in-a-directory stuff be added to this PR?

@rfay rfay force-pushed the 20181004_check_cms_content branch from 46f2ab6 to 9bf2d91 Compare October 8, 2018 18:55
@rfay rfay force-pushed the 20181004_check_cms_content branch from 9bf2d91 to 8c298aa Compare October 8, 2018 20:37
@rfay rfay merged commit 93d0039 into ddev:master Oct 8, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants