Commit Graph
6 Commits
Author SHA1 Message Date
Taufek Johar 0b902e3e96 Install Prestissimo in Workspace
**Why we need this change?**

[Prestissimo](https://github.com/hirak/prestissimo) will enabled `composer` to install plugins in parallel.

**Source**

http://jackmcdade.com/blog/tired-of-waiting
2018-01-17 10:21:08 +08:00
Taufek Johar 98b2b2e47b Update Dusk Documentation
Added new option on how to setup and run Dusk tests without Selenium.
2017-10-07 00:47:02 +08:00
Taufek Johar eeee14338f Move Chrome Driver Version to Env
This will allow us to upgrade chrome driver easily. Set the default chrome driver to 2.32.

Also remove the comment and empty line to avoid getting below warning:

```
[WARNING]: Empty continuation lines will become errors in a future release.
```
2017-10-06 22:58:52 +08:00
Taufek Johar 881cbfb8c2 Install Dependencies to Run Dusk Tests
**Why we need this change?**

Currently we are unable to run Dusk (Browser) tests in workspace container. This change,
is to allow us to install all dependencies needed to run Dust test which consists of

1. Linux packages such as xvfb (x-virtual frame buffer to run browser in headless container) and etc.
2. Chrome browser.
3. Chrome driver.

To install the Dusk dependencies.
1. Update `WORKSPACE_INSTALL_DUSK_DEPS` to true.
2. Run `docker-compose build workspace`.

I've also added couple of aliases to facilitate the preparation of test environment.

1. xvfb = `Xvfb -ac :0 -screen 0 1024x768x16 &` (run x-virtual frame buffer in the background)
2. serve = `php artisan serve --quiet &` (run laravel app in the background)

Once those are installed, we will need to update the default chrome driver argument in Laravel 5.5
from `--headless` to `sandbox`. Below are the steps to run Dusk in workspace.

1. `docker-compose run workspace bash` (get into workspace).
2. `laravel new dusk-test` (generate new lavarel app for testing purpose).
3. `cd dusk-test` (change directory to newly generate app folder).
4. `composer install --dev laravel/dusk` (install dusk via composer).
5. `php artisan dusk:install` (generate dusk files).
6. `sed -i '/APP_URL/d' .env` (remove APP_URL entry in .env)
7. `echo 'APP_URL=localhost:8000' >> .env` (add new APP_URL entry in .env)
8. `sed -i--'s/headless/no-sandbox/g' tests/DuskTestCase.php` (replace the default chrome driver argument).
9. `xvfb` (alias to run Xvfb instance in the background).
10. `serve` (alias to run laravel app in the background).
11. `dusk` (alias to run Dusk test).
2017-10-02 20:08:01 +08:00
Taufek Johar 8c1e71eca5 Add artisan aliases
Added below php artisan commonly used aliases:

```
dusk =  php artisan dusk
fresh = php artisan migrate:fresh
refresh = php artisan migrate:refresh
rollback = php artisan migrate:rollback
```
2017-09-24 22:16:04 +08:00
Taufek Johar 8cb4c8d62e Add Terraform to Workspace
Added Terraform (www.terraform.io) binary to workspace container.
This tool is useful to spawn resources to multiple cloud providers via config files.
2017-09-23 15:49:55 +08:00