Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/geneowak/pest-php-sublime-text-snippets
Pest PHP V2 Snippets for Sublime Text
https://github.com/geneowak/pest-php-sublime-text-snippets
pestphp sublime-package sublime-text
Last synced: about 7 hours ago
JSON representation
Pest PHP V2 Snippets for Sublime Text
- Host: GitHub
- URL: https://github.com/geneowak/pest-php-sublime-text-snippets
- Owner: geneowak
- License: mit
- Created: 2023-07-17T12:30:36.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-07-30T10:03:57.000Z (over 1 year ago)
- Last Synced: 2023-07-30T11:20:28.132Z (over 1 year ago)
- Topics: pestphp, sublime-package, sublime-text
- Homepage:
- Size: 17.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pest PHP Sublime Text Snippets
## Credits
This package was inspired by the vs-code [pest-snippets package](https://github.com/dansysanalyst/pest-snippets)
## Installation
Use Sublime Text's [Package Control](https://packagecontrol.io/installation) to install this package.
## About
Pest PHP Sublime Text Sublime Snippets is a compilation of code snippets for writing tests with [Pest PHP v2](https://pestphp.com/).
Code snippets are templates for the codes you use most often.
Using snippets allows you to write code faster, boosting your productivity, and preventing mistakes.
â Please consider starring the [GitHub repository](https://github.com/geneowak/Pest-PHP-Sublime-Text-Snippets) if you find this package useful.
## ð Quick start
Just type `:p` to get a list of all code snippets.
Additionally, you can type:
- `:pte` to access all `test()` snippets.
- `:pti` to access all `it()` snippets.
- `:pex` to access the available `expect()` methods.
## ðïļ Code Snippet List
### Test templates
Pest provides two functions for writing tests: `test()` and `it()`.
Type `:pte` + [TAB] to use the `test()` function:
```php
test("", function () {
//expect()->
});
```Type `:pit` + [TAB] to the `ÃŽt()` function:
```php
it("", function () {
//expect()->
});
```#### Skipping tests
Type `:ptes` / `:pits` to create a test with `skip()`:
```php
test("", function () {
//...
})->skip();
```#### Skipping tests (Todo)
Type `:petodo` / `:pitodo` + [TAB] to create a test with `todo()`:
```php
test("", function () {
//...
})->todo();
```#### Skipping tests (WIP)
WIP stands for "Work In Progress".
Type `:ptewip` / `:pitwip` to create a test with `skip('wip')`:
```php
test("", function () {
//...
})->skip("wip");
```#### Groups of tests
Type `:pteg` / `:pitg` + [TAB] to create a test with `group()`:
```php
test("", function () {
//...
})->group();
```#### Datasets
Type `:pted` / `:pitd` + [TAB] to create a test with `with()`:
```php
test("", function () {
//...
})->with();
```Type `:pteld` / `:pitld` + [TAB] to create a test with `with()` using Lazy datasets:
```php
test("", function () {
//...
})->with(function () {
yield "";
});
```### Exceptions & Errors
Type `:ptet` / `:pitt` + [TAB] to create a test with `throws()`:
```php
test("throws exception", function () {
//...
})->throws();
```Type `:ptetif` / `:pittif` + [TAB] to create a test with `throwsIf()`:
```php
test("throws exception if...", function () {
//...
})->throwsIf();
```Type `:penoex` / `:pitnoex` + [TAB] to create a test with `throwsNoExceptions()`:
```php
test("throws no exceptions", function () {
//...
})->throwsNoExceptions();
```### Setup and teardown
Type `:pbe` + [TAB] to create a `beforeEach()` function:
```php
beforeEach(function () {
//...
});
```Type `:pae` + [TAB] to create a `afterEach()` function:
```php
afterEach(function () {
//...
});
```Type `:pba` + [TAB] to create a `beforeAll()` function:
```php
beforeAll(function () {
//...
});
```Type `:paa` + [TAB] to create a `afterAll()` function:
```php
afterAll(function () {
//...
});
```### Expectation API
Type `:pex` + [TAB] to create a `expect()` function:
```php
expect();
```Then, type `:pex` and use your keyboard to move through all the different `expectation` methods.
For example, type: `pex` + [TAB] and then `:pextobe` + [TAB] results in:
```php
expect()->toBe();
```Available `expect()` methods:
| Trigger | Snippet |
| ----------------------------- | ---------------------------- |
| : `pex` | expect()-> |
| : `pextobe` | ->toBe() |
| : `pextobearray` | ->toBeArray() |
| : `pextobeempty` | ->toBeEmpty() |
| : `pextobetrue` | ->toBeTrue() |
| : `pextobetruthy` | ->toBeTruthy() |
| : `pextobefalse` | ->toBeFalse() |
| : `pextobefalsy` | ->toBeFalsy() |
| : `pextobegreaterthan` | ->toBeGreaterThan() |
| : `pextobegreaterthanorequal` | ->toBeGreaterThanOrEqual() |
| : `pextobelessthan` | ->toBeLessThan() |
| : `pextobelessthanorequal` | ->toBeLessThanOrEqual() |
| : `pextocontain` | ->toContain() |
| : `pextocontainonlyins` | ->toContainOnlyInstancesOf() |
| : `pextohavecount` | ->toHaveCount() |
| : `pextohavemethod` | ->toHaveMethod() |
| : `pextohavemethods` | ->toHaveMethods() |
| : `pextohaveproperty` | ->toHaveProperty() |
| : `pextohaveproperties` | ->toHaveProperties() |
| : `pextomatcharray` | ->toMatchArray() |
| : `pextomatchobject` | ->toMatchObject() |
| : `pextoequal` | ->toEqual() |
| : `pextoequalcanonicalizing` | ->toEqualCanonicalizing() |
| : `pextoequalwithdelta` | ->toEqualWithDelta() |
| : `pextobein` | ->toBeIn() |
| : `pextobeinfinite` | ->toBeInfinite() |
| : `pextobeinstanceof` | ->toBeInstanceOf() |
| : `pextobebool` | ->toBeBool() |
| : `pextobecallable` | ->toBeCallable() |
| : `pextobefloat` | ->toBeFloat() |
| : `pextobeint` | ->toBeInt() |
| : `pextobeiterable` | ->toBeIterable() |
| : `pextobenumeric` | ->toBeNumeric() |
| : `pextobeobject` | ->toBeObject() |
| : `pextoberesource` | ->toBeResource() |
| : `pextobescalar` | ->toBeScalar() |
| : `pextobestring` | ->toBeString() |
| : `pextobejson` | ->toBeJson() |
| : `pextobenan` | ->toBeNan() |
| : `pextobenull` | ->toBeNull() |
| : `pextohavekey` | ->toHaveKey() |
| : `pextohavekeys` | ->toHaveKeys() |
| : `pextohavelength` | ->toHaveLength() |
| : `pextobefile` | ->toBeFile() |
| : `pextobedirectory` | ->toBeDirectory() |
| : `pextobereadabledirectory` | ->toBeReadableDirectory() |
| : `pextobereadablefile` | ->toBeReadableFile() |
| : `pextobewritabledirectory` | ->toBeWritableDirectory() |
| : `pextobewritablefile` | ->toBeWritableFile() |
| : `pextostartwith` | ->toStartWith() |
| : `pextothrow` | ->toThrow() |
| : `pextoendwith` | ->toEndWith() |
| : `pextomatch` | ->toMatch() |
| : `pextomatchconstraint` | ->toMatchConstraint() |
| : `pexdd` | ->dd() |
| : `pexray` | ->ray() |
| : `pexjson` | ->json()-> |
| : `pexand` | ->and()-> |
| : `pexnot` | ->not()-> |
| : `pexdef` | ->defer()-> |
| : `pexeach` | ->each()-> |
| : `pexsequence` | ->sequence() |
| : `pexwhen` | ->when() |
| : `pexunless` | ->unless() |
| : `pexunless` | ->unless() |