# UW base Profile: Drupal 8 + PatternLab

Built from [Drupal 8 core](https://drupal.org) and [Gesso](https://www.drupal.org/project/gesso) using the code from [Forum One](https://www.forumone.com/) and the [git hub repository](https://github.com/forumone/gesso).

## Requirements

  1. [Node](https://github.com/creationix/nvm)
        - currently version 12.16.1
  2. [Gulp](http://gulpjs.com/)
        - currently version 4.0.2
  3. [Composer](https://getcomposer.org/)
        - currently version 1.10.19

## Notes on theming
UW has taken the approach to use a component based design and has chosen [Forum One's](https://www.forumone.com/) pattern-lab instance of [Gesso](https://www.drupal.org/project/gesso) from the [git hub repository](https://github.com/forumone/gesso).

Gesso is now installed with Composer as the [uw_wcms_gesso](https://git.uwaterloo.ca/wcms/uw_wcms_gesso) module in the composer.json.

## Using Pattern-Lab

Once the rebuild is completed, you can visit pattern-lab at:
https://<site-name>/profiles/uw_base_profile/themes/uw_fdsu_theme_resp/uw_wcms_gesso/gesso/pattern-lab.

    EXAMPLE:
    https://d8alt/fdsu1/profiles/uw_base_profile/themes/uw_fdsu_theme_resp/uw_wcms_gesso/gesso/pattern-lab

If you are doing development, simply navigate in a terminal
<drupal-core-path>/profiles/uw_fdsu_theme_resp/uw_wcms_gesso/gesso and run gulp

    EXAMPLE:
    cd /var/www/drupal8/profiles/uw_fdsu_theme_resp/uw_wcms_gesso/gesso
    gulp

## Locally-modified modules
imageMagick 8.x-2.x-beta1-uw_wcms

- Base: 8.x-2.0-beta1
    - Patch 60b739: Fix Animated GIF resizing.
https://www.drupal.org/node/1802534#comment-12246133

components 8.x-2.0-beta1-uw_wcms1
- Base: 8.x-2.0-beta1
    - Patch 3761f753: Fix core requirements.
      https://www.drupal.org/project/components/issues/3100006#comment-13385658

eck 8.x-1.0-alpha5-uw_wcms1
- Base: 8.x-1.0-alpha5
    - 801e43d9: Patching updates after 8.7 drupal core

samlauth 8.x-3.0-alpha1-uw_wcms3
- Base: 8.x-3.0-alpha1
    - Patch 4a4b894d: fixing event subscribers.
      https://www.drupal.org/project/samlauth/issues/2925171#comment-12351528

webform 8.x-5.6-uw_wcms2
- Base: 8.x-5.6
    - 5752fc4a: allow webform libraries to use our repos
    - cc6728b1: fix version numbers

## Testing
To prepare a Drupal install for testing with PHPUnit, copy
DRUPAL_ROOT/core/phpunit.xml.dist to DRUPAL_ROOT/core/phpunit.xml and in that
file set:

    SIMPLETEST_BASE_URL to the BASE_URL for your site.
    SIMPLETEST_DB to the database URL following the pattern in the file.
    SYMFONY_DEPRECATIONS_HELPER to "weak".

Tests can be run from the Drupal UI. To run tests from the command line, run
this in the DRUPAL_ROOT:

    sudo --user www-data vendor/bin/phpunit -c core

Where  is like: profiles/uw_base_profile/tests/src/Functional/UwWcmsBasicTest.php

Tests need to run with sudo because they need to run as the user that runs the
web server.