From 05dda3c9b2ce8a5ce87f23f2d3c67984bc8de755 Mon Sep 17 00:00:00 2001 From: Fabio Hiroki Date: Tue, 2 Nov 2021 19:35:40 +0100 Subject: [PATCH 1/2] add adapter readme --- README.md | 5 ++++- app/structural/adapter/README.md | 5 +++++ tests/structural/adapter/AdapterTest.php | 3 ++- 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 app/structural/adapter/README.md diff --git a/README.md b/README.md index 9e1750a..14a89d9 100644 --- a/README.md +++ b/README.md @@ -4,4 +4,7 @@ A collection of design patterns written in PHP [![PHP Composer](https://github.com/fabiothiroki/php-design-patterns/actions/workflows/php.yaml/badge.svg)](https://github.com/fabiothiroki/php-design-patterns/actions/workflows/php.yaml) [![Coverage Status](https://coveralls.io/repos/github/fabiothiroki/php-design-patterns/badge.svg?branch=main)](https://coveralls.io/github/fabiothiroki/php-design-patterns?branch=main) ## Creational -- [Prototype](app/creational/prototype) \ No newline at end of file +- [Prototype](app/creational/prototype) + +## Structural +- [Adapter](app/structural/adapter) \ No newline at end of file diff --git a/app/structural/adapter/README.md b/app/structural/adapter/README.md new file mode 100644 index 0000000..4dc9325 --- /dev/null +++ b/app/structural/adapter/README.md @@ -0,0 +1,5 @@ +# Adapter design pattern in PHP + +Article: + +[![](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBJIHdhbnQgdG8gc2VuZCBhbiBlbWFpbCFcbiAgICBUaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyLS0-PlNpZ25VcFNlcnZpY2U6IEkganVzdCBuZWVkIGEgcmVjaWNwaWVudCBhbmQgdGhlIGNvbnRlbnQhXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBPaCwgdGhhdCdzIGV4YWN0bHkgd2hhdCBJIGhhdmUhXG4gICAgVGhpcmRQYXJ0eUVtYWlsU2VuZGVyQWRhcHRlci0tPj5UaGlyZFBhcnR5RW1haWxDbGllbnQ6IFBsZWFzZSBzZW5kIHRoaXMgZW1haWxcbiAgICAgICAgICAgICIsIm1lcm1haWQiOnsidGhlbWUiOiJkZWZhdWx0In0sInVwZGF0ZUVkaXRvciI6ZmFsc2UsImF1dG9TeW5jIjp0cnVlLCJ1cGRhdGVEaWFncmFtIjpmYWxzZX0)](https://mermaid-js.github.io/mermaid-live-editor/edit/#eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBJIHdhbnQgdG8gc2VuZCBhbiBlbWFpbCFcbiAgICBUaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyLS0-PlNpZ25VcFNlcnZpY2U6IEkganVzdCBuZWVkIGEgcmVjaWNwaWVudCBhbmQgdGhlIGNvbnRlbnQhXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBPaCwgdGhhdCdzIGV4YWN0bHkgd2hhdCBJIGhhdmUhXG4gICAgVGhpcmRQYXJ0eUVtYWlsU2VuZGVyQWRhcHRlci0tPj5UaGlyZFBhcnR5RW1haWxDbGllbnQ6IFBsZWFzZSBzZW5kIHRoaXMgZW1haWxcbiAgICAgICAgICAgICIsIm1lcm1haWQiOiJ7XG4gIFwidGhlbWVcIjogXCJkZWZhdWx0XCJcbn0iLCJ1cGRhdGVFZGl0b3IiOmZhbHNlLCJhdXRvU3luYyI6dHJ1ZSwidXBkYXRlRGlhZ3JhbSI6ZmFsc2V9) \ No newline at end of file diff --git a/tests/structural/adapter/AdapterTest.php b/tests/structural/adapter/AdapterTest.php index 15ac706..59e1988 100644 --- a/tests/structural/adapter/AdapterTest.php +++ b/tests/structural/adapter/AdapterTest.php @@ -17,7 +17,8 @@ public function testThirdPartyEmailSenderAdapterAdapterUsesCorrectClient(): void $emailAdapter = new ThirdPartyEmailSenderAdapter($emailClient); $emailClient->expects($this->once()) - ->method('sendEmail'); + ->method('sendEmail') + ->with('email@email.com', 'I love design patterns'); $emailAdapter->sendEmail( 'email@email.com', From 70b111603530441b7b1851cd84a9a28f96d58cba Mon Sep 17 00:00:00 2001 From: Fabio Hiroki Date: Tue, 2 Nov 2021 19:38:57 +0100 Subject: [PATCH 2/2] Add article link --- app/structural/adapter/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/structural/adapter/README.md b/app/structural/adapter/README.md index 4dc9325..1a9f334 100644 --- a/app/structural/adapter/README.md +++ b/app/structural/adapter/README.md @@ -1,5 +1,5 @@ # Adapter design pattern in PHP -Article: +Article: https://dev.to/fabiothiroki/php-design-patterns-adapter-b8c [![](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBJIHdhbnQgdG8gc2VuZCBhbiBlbWFpbCFcbiAgICBUaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyLS0-PlNpZ25VcFNlcnZpY2U6IEkganVzdCBuZWVkIGEgcmVjaWNwaWVudCBhbmQgdGhlIGNvbnRlbnQhXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBPaCwgdGhhdCdzIGV4YWN0bHkgd2hhdCBJIGhhdmUhXG4gICAgVGhpcmRQYXJ0eUVtYWlsU2VuZGVyQWRhcHRlci0tPj5UaGlyZFBhcnR5RW1haWxDbGllbnQ6IFBsZWFzZSBzZW5kIHRoaXMgZW1haWxcbiAgICAgICAgICAgICIsIm1lcm1haWQiOnsidGhlbWUiOiJkZWZhdWx0In0sInVwZGF0ZUVkaXRvciI6ZmFsc2UsImF1dG9TeW5jIjp0cnVlLCJ1cGRhdGVEaWFncmFtIjpmYWxzZX0)](https://mermaid-js.github.io/mermaid-live-editor/edit/#eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBJIHdhbnQgdG8gc2VuZCBhbiBlbWFpbCFcbiAgICBUaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyLS0-PlNpZ25VcFNlcnZpY2U6IEkganVzdCBuZWVkIGEgcmVjaWNwaWVudCBhbmQgdGhlIGNvbnRlbnQhXG4gICAgU2lnblVwU2VydmljZS0tPj5UaGlyZFBhcnR5RW1haWxTZW5kZXJBZGFwdGVyOiBPaCwgdGhhdCdzIGV4YWN0bHkgd2hhdCBJIGhhdmUhXG4gICAgVGhpcmRQYXJ0eUVtYWlsU2VuZGVyQWRhcHRlci0tPj5UaGlyZFBhcnR5RW1haWxDbGllbnQ6IFBsZWFzZSBzZW5kIHRoaXMgZW1haWxcbiAgICAgICAgICAgICIsIm1lcm1haWQiOiJ7XG4gIFwidGhlbWVcIjogXCJkZWZhdWx0XCJcbn0iLCJ1cGRhdGVFZGl0b3IiOmZhbHNlLCJhdXRvU3luYyI6dHJ1ZSwidXBkYXRlRGlhZ3JhbSI6ZmFsc2V9) \ No newline at end of file