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

PHPUnit to Pest Converter #31

Merged
merged 8 commits into from
Feb 21, 2022
Merged

PHPUnit to Pest Converter #31

merged 8 commits into from
Feb 21, 2022

Conversation

rawilk
Copy link
Owner

@rawilk rawilk commented Feb 21, 2022

This pull request contains changes for migrating your test suite from PHPUnit to Pest automated by the Pest Converter.

Before merging, you need to:

  • Checkout the shift-56800 branch
  • Review all of the comments below for additional changes
  • Run composer update to install Pest with your dependencies
  • Run vendor/bin/pest to verify the conversion

@rawilk
Copy link
Owner Author

rawilk commented Feb 21, 2022

⚠️ Shift detected helper methods in the following PHPUnit tests. Currently Pest does not support namespaces. As such, these functions may result in a naming conflict.

While Shift converted these methods to functions in the new Pest test, you should review these files to see if these functions may be inlined or extracted to a custom helper.

  • tests/Feature/Api/PrintNode/Entity/ComputerTest.php
  • tests/Feature/Api/PrintNode/Entity/ComputersTest.php
  • tests/Feature/Api/PrintNode/Entity/PrintJobTest.php
  • tests/Feature/Api/PrintNode/Entity/PrintJobsTest.php
  • tests/Feature/Api/PrintNode/Entity/PrinterCapabilitiesTest.php
  • tests/Feature/Api/PrintNode/Entity/PrinterTest.php
  • tests/Feature/Api/PrintNode/Entity/PrintersTest.php
  • tests/Feature/Api/PrintNode/Entity/WhoamiTest.php
  • tests/Feature/Drivers/Cups/Entity/JobTest.php
  • tests/Feature/Drivers/Cups/Entity/PrinterTest.php
  • tests/Feature/Receipts/ReceiptPrinterTest.php

@rawilk
Copy link
Owner Author

rawilk commented Feb 21, 2022

ℹ️ Shift converted common PHPUnit assertions to Pest expectations. However, there may also be opportunities to chain your expectations together.

For example:

// Before
expect($comment)->toBeArray();
expect($comment)->toHaveCount(3);
expect($comment)->toContain('foo');

// After
expect($comment)->toBeArray()->toHaveCount(3)->toContain('foo');

@rawilk
Copy link
Owner Author

rawilk commented Feb 21, 2022

⚠️ Shift detected references to the PHPUnit test runner (vendor/bin/phpunit) in the following files. You should review these instances to see if they may be updated to the Pest test runner (vendor/bin/pest).

  • ./composer.json

@rawilk
Copy link
Owner Author

rawilk commented Feb 21, 2022

ℹ️ Pest is currently beta testing their Parallel Plugin. If you would like to save time by running your tests in parallel, you may install this plugin and run your tests with the -p options.

composer require pestphp/pest-plugin-parallel --dev
vendor/bin/pest -p

@rawilk
Copy link
Owner Author

rawilk commented Feb 21, 2022

⚗️ This Shift is still being refined. Please report any issues or suggestions to shift@laravelshift.com. Your feedback is what helps improve the experience for everyone.

@rawilk rawilk merged commit c7b8c60 into main Feb 21, 2022
@rawilk rawilk deleted the shift-56800 branch February 21, 2022 16:23
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.

2 participants