From 846a5b3cc88f5a79dec52fc00a0ae92a3a47f344 Mon Sep 17 00:00:00 2001 From: riccardodallavia Date: Tue, 5 Apr 2022 12:03:07 +0200 Subject: [PATCH] first release --- .editorconfig | 15 + .gitattributes | 13 + .github/CONTRIBUTING.md | 55 ++++ .github/FUNDING.yml | 1 + .github/ISSUE_TEMPLATE/config.yml | 11 + .github/SECURITY.md | 3 + .github/workflows/dependabot-auto-merge.yml | 32 ++ .github/workflows/php-cs-fixer.yml | 23 ++ .github/workflows/psalm.yml | 33 ++ .github/workflows/run-tests.yml | 46 +++ .github/workflows/update-changelog.yml | 28 ++ .gitignore | 14 + .php-cs-fixer.dist.php | 35 +++ CHANGELOG.md | 3 + LICENSE.md | 21 ++ README.md | 283 ++++++++++++++++++ art/socialcard.png | Bin 0 -> 249880 bytes composer.json | 70 +++++ config/markable.php | 43 +++ database/factories/ArticleFactory.php | 18 ++ database/factories/PostFactory.php | 18 ++ database/factories/UserFactory.php | 18 ++ .../migrations/create_articles_table.php.stub | 21 ++ .../create_bookmarks_table.php.stub | 25 ++ .../create_favorites_table.php.stub | 25 ++ .../migrations/create_likes_table.php.stub | 25 ++ .../migrations/create_posts_table.php.stub | 21 ++ .../create_reactions_table.php.stub | 25 ++ .../migrations/create_users_table.php.stub | 21 ++ phpunit.xml.dist | 39 +++ psalm.xml.dist | 16 + .../InvalidMarkInstanceException.php | 19 ++ src/Exceptions/InvalidMarkValueException.php | 19 ++ .../InvalidMarkableInstanceException.php | 19 ++ src/Mark.php | 154 ++++++++++ src/Markable.php | 63 ++++ src/MarkableServiceProvider.php | 40 +++ src/Models/Bookmark.php | 13 + src/Models/Favorite.php | 13 + src/Models/Like.php | 13 + src/Models/Reaction.php | 13 + src/Scopes/MarkableScope.php | 33 ++ tests/BookmarkTest.php | 38 +++ tests/FavoriteTest.php | 38 +++ tests/LikeTest.php | 38 +++ tests/MarkTest.php | 170 +++++++++++ tests/MarkableTest.php | 59 ++++ tests/Models/Article.php | 24 ++ tests/Models/ModelWithInvalidMark.php | 15 + tests/Models/Post.php | 18 ++ tests/Models/User.php | 11 + tests/ReactionTest.php | 184 ++++++++++++ tests/TestCase.php | 66 ++++ 53 files changed, 2061 insertions(+) create mode 100644 .editorconfig create mode 100644 .gitattributes create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/FUNDING.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/SECURITY.md create mode 100644 .github/workflows/dependabot-auto-merge.yml create mode 100644 .github/workflows/php-cs-fixer.yml create mode 100644 .github/workflows/psalm.yml create mode 100644 .github/workflows/run-tests.yml create mode 100644 .github/workflows/update-changelog.yml create mode 100644 .gitignore create mode 100644 .php-cs-fixer.dist.php create mode 100644 CHANGELOG.md create mode 100644 LICENSE.md create mode 100644 README.md create mode 100644 art/socialcard.png create mode 100644 composer.json create mode 100644 config/markable.php create mode 100644 database/factories/ArticleFactory.php create mode 100644 database/factories/PostFactory.php create mode 100644 database/factories/UserFactory.php create mode 100644 database/migrations/create_articles_table.php.stub create mode 100644 database/migrations/create_bookmarks_table.php.stub create mode 100644 database/migrations/create_favorites_table.php.stub create mode 100644 database/migrations/create_likes_table.php.stub create mode 100644 database/migrations/create_posts_table.php.stub create mode 100644 database/migrations/create_reactions_table.php.stub create mode 100644 database/migrations/create_users_table.php.stub create mode 100644 phpunit.xml.dist create mode 100644 psalm.xml.dist create mode 100644 src/Exceptions/InvalidMarkInstanceException.php create mode 100644 src/Exceptions/InvalidMarkValueException.php create mode 100644 src/Exceptions/InvalidMarkableInstanceException.php create mode 100644 src/Mark.php create mode 100644 src/Markable.php create mode 100644 src/MarkableServiceProvider.php create mode 100644 src/Models/Bookmark.php create mode 100644 src/Models/Favorite.php create mode 100644 src/Models/Like.php create mode 100644 src/Models/Reaction.php create mode 100644 src/Scopes/MarkableScope.php create mode 100644 tests/BookmarkTest.php create mode 100644 tests/FavoriteTest.php create mode 100644 tests/LikeTest.php create mode 100644 tests/MarkTest.php create mode 100644 tests/MarkableTest.php create mode 100644 tests/Models/Article.php create mode 100644 tests/Models/ModelWithInvalidMark.php create mode 100644 tests/Models/Post.php create mode 100644 tests/Models/User.php create mode 100644 tests/ReactionTest.php create mode 100644 tests/TestCase.php diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..a7c44dd --- /dev/null +++ b/.editorconfig @@ -0,0 +1,15 @@ +root = true + +[*] +charset = utf-8 +indent_size = 4 +indent_style = space +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[*.{yml,yaml}] +indent_size = 2 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..99a9952 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,13 @@ +# Path-based git attributes +# https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html + +# Ignore all test and documentation with "export-ignore". +/.github export-ignore +/.gitattributes export-ignore +/.gitignore export-ignore +/phpunit.xml.dist export-ignore +/tests export-ignore +/.editorconfig export-ignore +/.php_cs.dist export-ignore +/psalm.xml export-ignore +/psalm.xml.dist export-ignore diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..b4ae1c4 --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,55 @@ +# Contributing + +Contributions are **welcome** and will be fully **credited**. + +Please read and understand the contribution guide before creating an issue or pull request. + +## Etiquette + +This project is open source, and as such, the maintainers give their free time to build and maintain the source code +held within. They make the code freely available in the hope that it will be of use to other developers. It would be +extremely unfair for them to suffer abuse or anger for their hard work. + +Please be considerate towards maintainers when raising issues or presenting pull requests. Let's show the +world that developers are civilized and selfless people. + +It's the duty of the maintainer to ensure that all submissions to the project are of sufficient +quality to benefit the project. Many developers have different skillsets, strengths, and weaknesses. Respect the maintainer's decision, and do not be upset or abusive if your submission is not used. + +## Viability + +When requesting or submitting new features, first consider whether it might be useful to others. Open +source projects are used by many developers, who may have entirely different needs to your own. Think about +whether or not your feature is likely to be used by other users of the project. + +## Procedure + +Before filing an issue: + +- Attempt to replicate the problem, to ensure that it wasn't a coincidental incident. +- Check to make sure your feature suggestion isn't already present within the project. +- Check the pull requests tab to ensure that the bug doesn't have a fix in progress. +- Check the pull requests tab to ensure that the feature isn't already in progress. + +Before submitting a pull request: + +- Check the codebase to ensure that your feature doesn't already exist. +- Check the pull requests to ensure that another person hasn't already submitted the feature or fix. + +## Requirements + +If the project maintainer has any additional requirements, you will find them listed here. + +- **[PSR-2 Coding Standard](https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md)** - The easiest way to apply the conventions is to install [PHP Code Sniffer](https://pear.php.net/package/PHP_CodeSniffer). + +- **Add tests!** - Your patch won't be accepted if it doesn't have tests. + +- **Document any change in behaviour** - Make sure the `README.md` and any other relevant documentation are kept up-to-date. + +- **Consider our release cycle** - We try to follow [SemVer v2.0.0](https://semver.org/). Randomly breaking public APIs is not an option. + +- **One pull request per feature** - If you want to do more than one thing, send multiple pull requests. + +- **Send coherent history** - Make sure each individual commit in your pull request is meaningful. If you had to make multiple intermediate commits while developing, please [squash them](https://www.git-scm.com/book/en/v2/Git-Tools-Rewriting-History#Changing-Multiple-Commit-Messages) before submitting. + +**Happy coding**! diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..6925ba6 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1 @@ +github: maize-tech diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..f523c8a --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,11 @@ +blank_issues_enabled: false +contact_links: + - name: Ask a question + url: https://github.com/maize-tech/laravel-markable/discussions/new?category=q-a + about: Ask the community for help + - name: Request a feature + url: https://github.com/maize-tech/laravel-markable/discussions/new?category=ideas + about: Share ideas for new features + - name: Report a bug + url: https://github.com/maize-tech/laravel-markable/issues/new + about: Report a reproducable bug diff --git a/.github/SECURITY.md b/.github/SECURITY.md new file mode 100644 index 0000000..1512509 --- /dev/null +++ b/.github/SECURITY.md @@ -0,0 +1,3 @@ +# Security Policy + +If you discover any security related issues, please email inn.security@h-farm.com instead of using the issue tracker. diff --git a/.github/workflows/dependabot-auto-merge.yml b/.github/workflows/dependabot-auto-merge.yml new file mode 100644 index 0000000..399ef82 --- /dev/null +++ b/.github/workflows/dependabot-auto-merge.yml @@ -0,0 +1,32 @@ +name: dependabot-auto-merge +on: pull_request_target + +permissions: + pull-requests: write + contents: write + +jobs: + dependabot: + runs-on: ubuntu-latest + if: ${{ github.actor == 'dependabot[bot]' }} + steps: + + - name: Dependabot metadata + id: metadata + uses: dependabot/fetch-metadata@v1.1.1 + with: + github-token: "${{ secrets.GITHUB_TOKEN }}" + + - name: Auto-merge Dependabot PRs for semver-minor updates + if: ${{steps.metadata.outputs.update-type == 'version-update:semver-minor'}} + run: gh pr merge --auto --merge "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + + - name: Auto-merge Dependabot PRs for semver-patch updates + if: ${{steps.metadata.outputs.update-type == 'version-update:semver-patch'}} + run: gh pr merge --auto --merge "$PR_URL" + env: + PR_URL: ${{github.event.pull_request.html_url}} + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} diff --git a/.github/workflows/php-cs-fixer.yml b/.github/workflows/php-cs-fixer.yml new file mode 100644 index 0000000..a83d708 --- /dev/null +++ b/.github/workflows/php-cs-fixer.yml @@ -0,0 +1,23 @@ +name: Check & fix styling + +on: [push] + +jobs: + php-cs-fixer: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: ${{ github.head_ref }} + + - name: Run PHP CS Fixer + uses: docker://oskarstark/php-cs-fixer-ga + with: + args: --config=.php-cs-fixer.dist.php --allow-risky=yes + + - name: Commit changes + uses: stefanzweifel/git-auto-commit-action@v4 + with: + commit_message: Fix styling diff --git a/.github/workflows/psalm.yml b/.github/workflows/psalm.yml new file mode 100644 index 0000000..99cf0d9 --- /dev/null +++ b/.github/workflows/psalm.yml @@ -0,0 +1,33 @@ +name: Psalm + +on: + push: + paths: + - '**.php' + - 'psalm.xml.dist' + +jobs: + psalm: + name: psalm + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: '7.4' + extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick + coverage: none + + - name: Cache composer dependencies + uses: actions/cache@v2 + with: + path: vendor + key: composer-${{ hashFiles('composer.lock') }} + + - name: Run composer install + run: composer install -n --prefer-dist + + - name: Run psalm + run: ./vendor/bin/psalm --output-format=github diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml new file mode 100644 index 0000000..cc2203a --- /dev/null +++ b/.github/workflows/run-tests.yml @@ -0,0 +1,46 @@ +name: run-tests + +on: [push, pull_request] + +jobs: + test: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: true + matrix: + os: [ubuntu-latest, windows-latest] + php: [8.1, 8.0, 7.4] + laravel: [9.*, 8.*] + stability: [prefer-lowest, prefer-stable] + include: + - laravel: 8.* + testbench: ^6.23 + - laravel: 9.* + testbench: 7.* + exclude: + - php: 7.4 + laravel: 9.* + + name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} - ${{ matrix.os }} + + steps: + - name: Checkout code + uses: actions/checkout@v2 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick, fileinfo + coverage: none + + - name: Setup problem matchers + run: | + echo "::add-matcher::${{ runner.tool_cache }}/php.json" + echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" + - name: Install dependencies + run: | + composer require "laravel/framework:${{ matrix.laravel }}" "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update + composer update --${{ matrix.stability }} --prefer-dist --no-interaction + - name: Execute tests + run: vendor/bin/phpunit diff --git a/.github/workflows/update-changelog.yml b/.github/workflows/update-changelog.yml new file mode 100644 index 0000000..fa56639 --- /dev/null +++ b/.github/workflows/update-changelog.yml @@ -0,0 +1,28 @@ +name: "Update Changelog" + +on: + release: + types: [released] + +jobs: + update: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v2 + with: + ref: main + + - name: Update Changelog + uses: stefanzweifel/changelog-updater-action@v1 + with: + latest-version: ${{ github.event.release.name }} + release-notes: ${{ github.event.release.body }} + + - name: Commit updated CHANGELOG + uses: stefanzweifel/git-auto-commit-action@v4 + with: + branch: main + commit_message: Update CHANGELOG + file_pattern: CHANGELOG.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0a63bc1 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +.idea +.php_cs +.php_cs.cache +.phpunit.result.cache +build +composer.lock +coverage +docs +phpunit.xml +psalm.xml +testbench.yaml +vendor +node_modules +.php-cs-fixer.cache diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php new file mode 100644 index 0000000..d612a54 --- /dev/null +++ b/.php-cs-fixer.dist.php @@ -0,0 +1,35 @@ +in([ + __DIR__ . '/src', + __DIR__ . '/tests', + ]) + ->name('*.php') + ->notName('*.blade.php') + ->ignoreDotFiles(true) + ->ignoreVCS(true); + +return (new PhpCsFixer\Config()) + ->setRules([ + '@PSR2' => true, + 'array_syntax' => ['syntax' => 'short'], + 'ordered_imports' => ['sort_algorithm' => 'alpha'], + 'no_unused_imports' => true, + 'not_operator_with_successor_space' => true, + 'trailing_comma_in_multiline' => true, + 'phpdoc_scalar' => true, + 'unary_operator_spaces' => true, + 'binary_operator_spaces' => true, + 'blank_line_before_statement' => [ + 'statements' => ['break', 'continue', 'declare', 'return', 'throw', 'try'], + ], + 'phpdoc_single_line_var_spacing' => true, + 'phpdoc_var_without_name' => true, + 'method_argument_space' => [ + 'on_multiline' => 'ensure_fully_multiline', + 'keep_multiple_spaces_after_comma' => true, + ], + 'single_trait_insert_per_statement' => true, + ]) + ->setFinder($finder); diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ee9293e --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +# Changelog + +All notable changes to `laravel-markable` will be documented in this file. diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..cf7d937 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2022 MAIZE SRL + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..8ef9fd9 --- /dev/null +++ b/README.md @@ -0,0 +1,283 @@ +

Social Card of Laravel Markable

+ +# Laravel Markable + +[![Latest Version on Packagist](https://img.shields.io/packagist/v/maize-tech/laravel-markable.svg?style=flat-square)](https://packagist.org/packages/maize-tech/laravel-markable) +[![GitHub Tests Action Status](https://img.shields.io/github/workflow/status/maize-tech/laravel-markable/run-tests?label=tests)](https://github.com/maize-tech/laravel-markable/actions?query=workflow%3ATests+branch%3Amaster) +[![GitHub Code Style Action Status](https://img.shields.io/github/workflow/status/maize-tech/laravel-markable/Check%20&%20fix%20styling?label=code%20style)](https://github.com/maize-tech/laravel-markable/actions?query=workflow%3A"Check+%26+fix+styling"+branch%3Amaster) +[![Total Downloads](https://img.shields.io/packagist/dt/maize-tech/laravel-markable.svg?style=flat-square)](https://packagist.org/packages/maize-tech/laravel-markable) + +This package allows you to easily add the markable feature to your application, as for example likes, bookmarks, favorites and so on. + +## Installation + +You can install the package via composer: + +```bash +composer require maize-tech/laravel-markable +``` + +You can publish and run the migrations with: + +```bash +php artisan vendor:publish --tag="markable-migration-bookmark" # publishes bookmark migration +php artisan vendor:publish --tag="markable-migration-favorite" # publishes favorite migration +php artisan vendor:publish --tag="markable-migration-like" # publishes like migration +php artisan vendor:publish --tag="markable-migration-reaction" # publishes reaction migration + +php artisan migrate +``` + +You can publish the config file with: +```bash +php artisan vendor:publish --tag="markable-config" +``` + +This is the content of the published config file: + +```php + App\Models\User::class, + + /* + |-------------------------------------------------------------------------- + | Table prefix + |-------------------------------------------------------------------------- + | + | Here you may specify the prefix for all mark tables. + | If set, all migrations should be named with the given prefix and + | the mark's class name. + | + */ + + 'table_prefix' => 'markable_', + + /* + |-------------------------------------------------------------------------- + | Allowed values + |-------------------------------------------------------------------------- + | + | Here you may specify the list of allowed values for each mark type. + | If a specific mark should not accept any values, you can avoid adding it + | to the list. + | The array key name should match the mark's class name in lower case. + | + */ + + 'allowed_values' => [ + 'reaction' => [], + ], +]; +``` + +## Usage + +### Basic + +To use the package, add the `Maize\Markable\Markable` trait to the model where you want to have marks. + +Once done, you can define the list of possible marks for the given model implementing the `$marks` array with the list of mark classes' namespace. + +Here's an example model including the `Markable` trait and implementing the `Like` mark: + +``` php +user(); + +Like::add($course, $user); // marks the course liked for the given user + +Like::remove($course, $user); // unmarks the course liked for the given user + +Like::toggle($course, $user); // toggles the course like for the given user + +Like::has($course, $user); // returns whether the given user has marked as liked the course or not + +Like::count($course); // returns the amount of like marks for the given course +``` + +### Custom mark model + +The package allows you to define custom marks. + +First thing you need to do is create a migration which defines the new mark model. +The package works with separate tables for each mark in order to increase the performances when executing related queries. + +The migration table name should contain the prefix defined in `table_prefix` attribute under `config/markable.php`. +Default prefix is set to `markable_`. + +Here's an example migration for bookmarks: + +``` php +class CreateBookmarksTable extends Migration +{ + public function up() + { + Schema::create('markable_bookmarks', function (Blueprint $table) { + $table->id(); + $table->foreignId('user_id')->constrained()->cascadeOnUpdate()->cascadeOnDelete(); + $table->morphs('markable'); + $table->string('value')->nullable(); + $table->json('metadata')->nullable(); + $table->timestamps(); + }); + } +} +``` + +Once done, you can create a new class which extends the abstract `Mark` class and implement the `markableRelationName` method, which defines the name of the relation. + +Here's an example model for bookmarks: + +``` php + [ + 'reaction' => [ + 'person_raising_hand', + 'heart', + 'kissing_heart', + ], +], +``` + +You can then use the custom mark with values: + +``` php +use App\Models\Post; +use Maize\Markable\Models\Reaction; + +$post = Post::firstOrFail(); +$user = auth()->user(); + +Reaction::add($post, $user, 'kissing_heart'); // adds the 'kissing_heart' reaction to the post for the given user + +Reaction::remove($post, $user, 'kissing_heart'); // removes the 'kissing_heart' reaction to the post for the given user + +Reaction::toggle($post, $user, 'heart'); // toggles the 'heart' reaction to the post for the given user + +Reaction::has($post, $user, 'heart'); // returns whether the user has reacted with the 'heart' reaction to the given post or not + +Reaction::count($post, 'person_raising_hand'); // returns the amount of 'person_raising_hand' reactions for the given post +``` + +### Retrieve mark relation with eloquent + +``` php +use App\Models\Course; +use App\Models\Post; + +Course::firstOrFail()->likers; // returns the collection of likes to the given course with their user + +Post::firstOrFail()->reacters; // returns the collection of reactions to the given post with their user and value +``` + +### Filter marked models with eloquent + +``` php +use App\Models\Course; +use App\Models\Post; + +Course::whereHasLike( + auth()->user() +)->get(); // returns all course models with a like from the given user + +Post::whereHasReaction( + auth()->user(), + 'heart' +)->get(); // returns all post models with a 'heart' reaction from the given user +``` + +## Testing + +```bash +composer test +``` + +## Changelog + +Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently. + +## Contributing + +Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details. + +## Security Vulnerabilities + +Please review [our security policy](../../security/policy) on how to report security vulnerabilities. + +## Credits + +- [Enrico De Lazzari](https://github.com/enricodelazzari) +- [Riccardo Dalla Via](https://github.com/riccardodallavia) +- [All Contributors](../../contributors) + +## License + +The MIT License (MIT). Please see [License File](LICENSE.md) for more information. diff --git a/art/socialcard.png b/art/socialcard.png new file mode 100644 index 0000000000000000000000000000000000000000..37592803f669eb865eed78f60903f2074bdf2ad2 GIT binary patch literal 249880 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 App\Models\User::class, + + /* + |-------------------------------------------------------------------------- + | Table prefix + |-------------------------------------------------------------------------- + | + | Here you may specify the prefix for all mark tables. + | If set, all migrations should be named with the given prefix and + | the mark's class name. + | + */ + + 'table_prefix' => 'markable_', + + /* + |-------------------------------------------------------------------------- + | Allowed values + |-------------------------------------------------------------------------- + | + | Here you may specify the list of allowed values for each mark type. + | If a specific mark should not accept any values, you can avoid adding it + | to the list. + | The array key name should match the mark's class name in lower case. + | + */ + + 'allowed_values' => [ + 'reaction' => [], + ], +]; diff --git a/database/factories/ArticleFactory.php b/database/factories/ArticleFactory.php new file mode 100644 index 0000000..ec6b4d9 --- /dev/null +++ b/database/factories/ArticleFactory.php @@ -0,0 +1,18 @@ +id(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('articles'); + } +} diff --git a/database/migrations/create_bookmarks_table.php.stub b/database/migrations/create_bookmarks_table.php.stub new file mode 100644 index 0000000..f1ab6d4 --- /dev/null +++ b/database/migrations/create_bookmarks_table.php.stub @@ -0,0 +1,25 @@ +id(); + $table->foreignId('user_id')->constrained()->cascadeOnUpdate()->cascadeOnDelete(); + $table->morphs('markable'); + $table->string('value')->nullable(); + $table->json('metadata')->nullable(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('markable_bookmarks'); + } +} diff --git a/database/migrations/create_favorites_table.php.stub b/database/migrations/create_favorites_table.php.stub new file mode 100644 index 0000000..8506bef --- /dev/null +++ b/database/migrations/create_favorites_table.php.stub @@ -0,0 +1,25 @@ +id(); + $table->foreignId('user_id')->constrained()->cascadeOnUpdate()->cascadeOnDelete(); + $table->morphs('markable'); + $table->string('value')->nullable(); + $table->json('metadata')->nullable(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('markable_favorites'); + } +} diff --git a/database/migrations/create_likes_table.php.stub b/database/migrations/create_likes_table.php.stub new file mode 100644 index 0000000..022f262 --- /dev/null +++ b/database/migrations/create_likes_table.php.stub @@ -0,0 +1,25 @@ +id(); + $table->foreignId('user_id')->constrained()->cascadeOnUpdate()->cascadeOnDelete(); + $table->morphs('markable'); + $table->string('value')->nullable(); + $table->json('metadata')->nullable(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('markable_likes'); + } +} diff --git a/database/migrations/create_posts_table.php.stub b/database/migrations/create_posts_table.php.stub new file mode 100644 index 0000000..5aadd3e --- /dev/null +++ b/database/migrations/create_posts_table.php.stub @@ -0,0 +1,21 @@ +id(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('posts'); + } +} diff --git a/database/migrations/create_reactions_table.php.stub b/database/migrations/create_reactions_table.php.stub new file mode 100644 index 0000000..c8ce0ed --- /dev/null +++ b/database/migrations/create_reactions_table.php.stub @@ -0,0 +1,25 @@ +id(); + $table->foreignId('user_id')->constrained()->cascadeOnUpdate()->cascadeOnDelete(); + $table->morphs('markable'); + $table->string('value')->nullable(); + $table->json('metadata')->nullable(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('markable_reactions'); + } +} diff --git a/database/migrations/create_users_table.php.stub b/database/migrations/create_users_table.php.stub new file mode 100644 index 0000000..bc67b6e --- /dev/null +++ b/database/migrations/create_users_table.php.stub @@ -0,0 +1,21 @@ +id(); + $table->timestamps(); + }); + } + + public function down() + { + Schema::dropIfExists('users'); + } +} diff --git a/phpunit.xml.dist b/phpunit.xml.dist new file mode 100644 index 0000000..290f954 --- /dev/null +++ b/phpunit.xml.dist @@ -0,0 +1,39 @@ + + + + + tests + + + + + ./src + + + + + + + + + + + diff --git a/psalm.xml.dist b/psalm.xml.dist new file mode 100644 index 0000000..c6df33e --- /dev/null +++ b/psalm.xml.dist @@ -0,0 +1,16 @@ + + + + + + + + + diff --git a/src/Exceptions/InvalidMarkInstanceException.php b/src/Exceptions/InvalidMarkInstanceException.php new file mode 100644 index 0000000..3e89170 --- /dev/null +++ b/src/Exceptions/InvalidMarkInstanceException.php @@ -0,0 +1,19 @@ +__toString(); + } + + public static function add(Model $markable, Model $user, ?string $value = null): self + { + static::validMarkable($markable); + + if (! static::hasAllowedValues($value)) { + throw InvalidMarkValueException::create(); + } + + $attributes = [ + app(static::class)->getUserIdColumn() => $user->getKey(), + 'markable_id' => $markable->getKey(), + 'markable_type' => $markable->getMorphClass(), + 'value' => $value, + ]; + $values = static::forceSingleValuePerUser() + ? [Arr::pull($attributes, 'value')] + : []; + + return static::firstOrCreate($attributes, $values); + } + + public static function remove(Model $markable, Model $user, ?string $value = null) + { + static::validMarkable($markable); + + return static::where([ + app(static::class)->getUserIdColumn() => $user->getKey(), + 'markable_id' => $markable->getKey(), + 'markable_type' => $markable->getMorphClass(), + 'value' => $value, + ])->get()->each->delete(); + } + + public static function count(Model $markable, ?string $value = null): int + { + static::validMarkable($markable); + + return static::where([ + 'markable_id' => $markable->getKey(), + 'markable_type' => $markable->getMorphClass(), + 'value' => $value, + ])->count(); + } + + public static function has(Model $markable, Model $user, ?string $value = null): bool + { + return static::where([ + app(static::class)->getUserIdColumn() => $user->getKey(), + 'markable_id' => $markable->getKey(), + 'markable_type' => $markable->getMorphClass(), + 'value' => $value, + ])->exists(); + } + + public static function toggle(Model $markable, Model $user, ?string $value = null) + { + return static::has($markable, $user, $value) + ? static::remove($markable, $user, $value) + : static::add($markable, $user, $value); + } + + public static function hasAllowedValues(?string $value): bool + { + return in_array($value, static::allowedValues() ?? [null]); + } + + public function user(): BelongsTo + { + return $this->belongsTo(config('markable.user_model')); + } + + public function markable(): MorphTo + { + return $this->morphTo(); + } + + public function getUserIdColumn(): string + { + return defined('static::USER_ID') ? static::USER_ID : 'user_id'; + } + + public function getQualifiedUserIdColumn(): string + { + return $this->qualifyColumn($this->getUserIdColumn()); + } + + public function getTable(): string + { + if (is_null($this->table)) { + $this->setTable( + config('markable.table_prefix', 'markable_'). + Str::snake(Str::pluralStudly(class_basename($this))) + ); + } + + return $this->table; + } + + protected static function forceSingleValuePerUser(): bool + { + return false; + } + + protected static function validMarkable(Model $markable): bool + { + if (! static::usesMarkableTrait($markable)) { + throw InvalidMarkableInstanceException::create(); + } + + if (! in_array(static::class, $markable::marks())) { + throw InvalidMarkableInstanceException::create(); + } + + return true; + } + + protected static function usesMarkableTrait(Model $markable): bool + { + return in_array( + Markable::class, + trait_uses_recursive(get_class($markable)) + ); + } +} diff --git a/src/Markable.php b/src/Markable.php new file mode 100644 index 0000000..df00fbd --- /dev/null +++ b/src/Markable.php @@ -0,0 +1,63 @@ +whereHas( + $mark->markableRelationName(), + fn (Builder $b) => $b->where([ + $mark->getQualifiedUserIdColumn() => $user->getKey(), + 'value' => $value, + ]) + ); + } + + protected static function registerMarks(): void + { + foreach (static::marks() as $mark) { + static::registerMark($mark); + } + } + + protected static function registerMark(string $mark) + { + $instance = new $mark; + + if (! $instance instanceof Mark) { + throw InvalidMarkInstanceException::create(); + } + + static::addMarkableRelation($instance); + } + + protected static function addMarkableRelation(Mark $mark) + { + static::resolveRelationUsing( + $mark->markableRelationName(), + fn ($markable) => $markable + ->morphToMany(config('markable.user_model'), 'markable', $mark->getTable()) + ->using($mark->getMorphClass()) + ->withPivot('value') + ->withTimestamps() + ); + } +} diff --git a/src/MarkableServiceProvider.php b/src/MarkableServiceProvider.php new file mode 100644 index 0000000..6999e36 --- /dev/null +++ b/src/MarkableServiceProvider.php @@ -0,0 +1,40 @@ + 'bookmark', + 'create_favorites_table' => 'favorite', + 'create_likes_table' => 'like', + 'create_reactions_table' => 'reaction', + ]; + + public function configurePackage(Package $package): void + { + $package + ->name('laravel-markable') + ->hasConfigFile(); + } + + public function bootingPackage() + { + if (! $this->app->runningInConsole()) { + return; + } + + $now = now(); + + foreach (static::MIGRATIONS as $migrationFileName => $name) { + $this->publishes([ + $this->package->basePath("/../database/migrations/{$migrationFileName}.php.stub") => $this->generateMigrationName( + $migrationFileName, + $now->addSecond() + ), ], "{$this->package->shortName()}-migration-{$name}"); + } + } +} diff --git a/src/Models/Bookmark.php b/src/Models/Bookmark.php new file mode 100644 index 0000000..41a991a --- /dev/null +++ b/src/Models/Bookmark.php @@ -0,0 +1,13 @@ +getModel()::marks(); + + foreach ($marks as $mark) { + $this->addWhereHasMark($builder, new $mark); + } + } + + protected function addWhereHasMark(Builder $builder, Mark $mark): void + { + $builder->macro( + "whereHas{$mark::getMarkClassName()}", + fn (Builder $b, $user, ?string $value = null) => $b->whereHasMark($mark, $user, $value) + ); + } +} diff --git a/tests/BookmarkTest.php b/tests/BookmarkTest.php new file mode 100644 index 0000000..e223c64 --- /dev/null +++ b/tests/BookmarkTest.php @@ -0,0 +1,38 @@ +create(); + $posts = Post::factory(2)->create(); + $users = User::factory(2)->create(); + + $this->assertCount(0, Article::whereHasBookmark($users[0])->get()); + $this->assertCount(0, Article::whereHasBookmark($users[1])->get()); + + Bookmark::add($articles[0], $users[0]); + $this->assertCount(1, Article::whereHasBookmark($users[0])->get()); + $this->assertCount(0, Article::whereHasBookmark($users[1])->get()); + + Bookmark::add($articles[2], $users[0]); + $this->assertCount(2, Article::whereHasBookmark($users[0])->get()); + $this->assertCount(0, Article::whereHasBookmark($users[1])->get()); + + Bookmark::add($articles[2], $users[1]); + $this->assertCount(2, Article::whereHasBookmark($users[0])->get()); + $this->assertCount(1, Article::whereHasBookmark($users[1])->get()); + + $this->expectException(InvalidMarkableInstanceException::class); + Bookmark::add($posts[0], $users[0]); + } +} diff --git a/tests/FavoriteTest.php b/tests/FavoriteTest.php new file mode 100644 index 0000000..7aee046 --- /dev/null +++ b/tests/FavoriteTest.php @@ -0,0 +1,38 @@ +create(); + $posts = Post::factory(2)->create(); + $users = User::factory(2)->create(); + + $this->assertCount(0, Article::whereHasFavorite($users[0])->get()); + $this->assertCount(0, Article::whereHasFavorite($users[1])->get()); + + Favorite::add($articles[0], $users[0]); + $this->assertCount(1, Article::whereHasFavorite($users[0])->get()); + $this->assertCount(0, Article::whereHasFavorite($users[1])->get()); + + Favorite::add($articles[2], $users[0]); + $this->assertCount(2, Article::whereHasFavorite($users[0])->get()); + $this->assertCount(0, Article::whereHasFavorite($users[1])->get()); + + Favorite::add($articles[2], $users[1]); + $this->assertCount(2, Article::whereHasFavorite($users[0])->get()); + $this->assertCount(1, Article::whereHasFavorite($users[1])->get()); + + $this->expectException(InvalidMarkableInstanceException::class); + Favorite::add($posts[0], $users[0]); + } +} diff --git a/tests/LikeTest.php b/tests/LikeTest.php new file mode 100644 index 0000000..5ec445a --- /dev/null +++ b/tests/LikeTest.php @@ -0,0 +1,38 @@ +create(); + $posts = Post::factory(2)->create(); + $users = User::factory(2)->create(); + + $this->assertCount(0, Article::whereHasLike($users[0])->get()); + $this->assertCount(0, Article::whereHasLike($users[1])->get()); + + Like::add($articles[0], $users[0]); + $this->assertCount(1, Article::whereHasLike($users[0])->get()); + $this->assertCount(0, Article::whereHasLike($users[1])->get()); + + Like::add($articles[2], $users[0]); + $this->assertCount(2, Article::whereHasLike($users[0])->get()); + $this->assertCount(0, Article::whereHasLike($users[1])->get()); + + Like::add($articles[2], $users[1]); + $this->assertCount(2, Article::whereHasLike($users[0])->get()); + $this->assertCount(1, Article::whereHasLike($users[1])->get()); + + Like::add($posts[0], $users[0]); + $this->assertCount(2, Article::whereHasLike($users[0])->get()); + $this->assertCount(1, Article::whereHasLike($users[1])->get()); + } +} diff --git a/tests/MarkTest.php b/tests/MarkTest.php new file mode 100644 index 0000000..d165f84 --- /dev/null +++ b/tests/MarkTest.php @@ -0,0 +1,170 @@ +create(); + $user = User::factory()->create(); + + Like::add($article, $user); + + $this->assertDatabaseHas((new Like)->getTable(), [ + 'user_id' => $user->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => null, + ]); + } + + /** @test */ + public function cannot_remove_with_an_invalid_markable_type_fail() + { + $user = User::factory()->create(); + + $this->expectException(InvalidMarkableInstanceException::class); + Like::remove($user, $user); + } + + /** @test */ + public function cannot_remove_an_unregistered_mark_fail() + { + $user = User::factory()->create(); + $post = Post::factory()->create(); + + $this->expectException(InvalidMarkableInstanceException::class); + Bookmark::remove($post, $user); + } + + /** @test */ + public function can_remove_a_mark() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + Like::add($article, $user); + Like::remove($article, $user); + + $this->assertDatabaseMissing((new Like)->getTable(), [ + 'user_id' => $user->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + ]); + } + + /** @test */ + public function can_count_marks() + { + $articles = Article::factory(2)->create(); + $post = Post::factory()->create(); + $users = User::factory(2)->create(); + + $this->assertEquals(0, Like::count($articles[0])); + $this->assertEquals(0, Like::count($articles[1])); + $this->assertEquals(0, Like::count($post)); + + Like::add($articles[0], $users[0]); + $this->assertEquals(1, Like::count($articles[0])); + $this->assertEquals(0, Like::count($articles[1])); + $this->assertEquals(0, Like::count($post)); + + Like::add($articles[0], $users[0]); + $this->assertEquals(1, Like::count($articles[0])); + $this->assertEquals(0, Like::count($articles[1])); + $this->assertEquals(0, Like::count($post)); + + Like::add($articles[0], $users[1]); + $this->assertEquals(2, Like::count($articles[0])); + $this->assertEquals(0, Like::count($articles[1])); + $this->assertEquals(0, Like::count($post)); + + Like::add($articles[1], $users[0]); + $this->assertEquals(2, Like::count($articles[0])); + $this->assertEquals(1, Like::count($articles[1])); + $this->assertEquals(0, Like::count($post)); + + Like::add($post, $users[0]); + $this->assertEquals(2, Like::count($articles[0])); + $this->assertEquals(1, Like::count($articles[1])); + $this->assertEquals(1, Like::count($post)); + } + + /** @test */ + public function can_check_if_user_has_mark() + { + $articles = Article::factory(2)->create(); + $post = Post::factory()->create(); + $users = User::factory(2)->create(); + + $this->assertFalse(Like::has($articles[0], $users[0])); + $this->assertFalse(Like::has($articles[0], $users[1])); + $this->assertFalse(Like::has($articles[1], $users[0])); + $this->assertFalse(Like::has($articles[1], $users[1])); + + Like::add($articles[0], $users[0]); + $this->assertTrue(Like::has($articles[0], $users[0])); + $this->assertFalse(Like::has($articles[0], $users[1])); + $this->assertFalse(Like::has($articles[1], $users[0])); + $this->assertFalse(Like::has($articles[1], $users[1])); + } + + /** @test */ + public function can_toggle_a_mark() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + Like::toggle($article, $user); + + $this->assertDatabaseHas((new Like)->getTable(), [ + 'user_id' => $user->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => null, + ]); + + Like::toggle($article, $user); + + $this->assertDatabaseMissing((new Like)->getTable(), [ + 'user_id' => $user->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + ]); + } + + /** @test */ + public function can_retrieve_markable_morph() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + $like = Like::add($article, $user); + + $this->assertInstanceOf(Article::class, $like->markable); + + $this->assertEquals($article->getKey(), $like->markable->getKey()); + } + + /** @test */ + public function can_retrieve_user_relation() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + $like = Like::add($article, $user); + + $this->assertInstanceOf(User::class, $like->user); + + $this->assertEquals($user->getKey(), $like->user->getKey()); + } +} diff --git a/tests/MarkableTest.php b/tests/MarkableTest.php new file mode 100644 index 0000000..6b3cd73 --- /dev/null +++ b/tests/MarkableTest.php @@ -0,0 +1,59 @@ +expectException(InvalidMarkInstanceException::class); + + $markable = new ModelWithInvalidMark; + } + + /** @test */ + public function can_register_a_mark_in_markable_model() + { + $markable = new Article; + + $this->assertInstanceOf(Article::class, $markable); + + $this->assertContains(Markable::class, trait_uses_recursive($markable)); + } + + /** @test */ + public function can_filter_marked_models() + { + $articles = Article::factory(5)->create(); + $posts = Post::factory(2)->create(); + $users = User::factory(2)->create(); + + $this->assertCount(0, Article::whereHasMark(app(Like::class), $users[0])->get()); + $this->assertCount(0, Article::whereHasMark(app(Like::class), $users[1])->get()); + + Like::add($articles[0], $users[0]); + $this->assertCount(1, Article::whereHasMark(app(Like::class), $users[0])->get()); + $this->assertCount(0, Article::whereHasMark(app(Like::class), $users[1])->get()); + + Like::add($articles[2], $users[0]); + $this->assertCount(2, Article::whereHasMark(app(Like::class), $users[0])->get()); + $this->assertCount(0, Article::whereHasMark(app(Like::class), $users[1])->get()); + + Like::add($articles[2], $users[1]); + $this->assertCount(2, Article::whereHasMark(app(Like::class), $users[0])->get()); + $this->assertCount(1, Article::whereHasMark(app(Like::class), $users[1])->get()); + + Like::add($posts[0], $users[0]); + $this->assertCount(2, Article::whereHasMark(app(Like::class), $users[0])->get()); + $this->assertCount(1, Article::whereHasMark(app(Like::class), $users[1])->get()); + } +} diff --git a/tests/Models/Article.php b/tests/Models/Article.php new file mode 100644 index 0000000..adc47e7 --- /dev/null +++ b/tests/Models/Article.php @@ -0,0 +1,24 @@ +create(); + $user = User::factory()->create(); + + $this->expectException(InvalidMarkValueException::class); + Reaction::add($article, $user); + } + + /** @test */ + public function cannot_add_an_invalid_reaction_value_fails() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + $this->expectException(InvalidMarkValueException::class); + Reaction::add($article, $user, 'not_valid_value'); + } + + /** @test */ + public function can_add_a_reaction() + { + $article = Article::factory()->create(); + $users = User::factory(2)->create(); + $table = (new Reaction)->getTable(); + + Reaction::add($article, $users[0], 'reaction_1'); + $this->assertDatabaseCount($table, 1); + $this->assertDatabaseHas($table, [ + 'user_id' => $users[0]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_1', + ]); + + Reaction::add($article, $users[0], 'reaction_2'); + $this->assertDatabaseCount($table, 2); + $this->assertDatabaseHas($table, [ + 'user_id' => $users[0]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_2', + ]); + + Reaction::add($article, $users[0], 'reaction_2'); + $this->assertDatabaseCount($table, 2); + + Reaction::add($article, $users[1], 'reaction_2'); + $this->assertDatabaseCount($table, 3); + $this->assertDatabaseHas($table, [ + 'user_id' => $users[1]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_2', + ]); + } + + /** @test */ + public function can_remove_a_reaction() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + $table = (new Reaction)->getTable(); + + Reaction::add($article, $user, 'reaction_1'); + $this->assertDatabaseCount($table, 1); + + Reaction::remove($article, $user, 'not_valid_value'); + $this->assertDatabaseCount($table, 1); + + Reaction::remove($article, $user, 'reaction_1'); + $this->assertDatabaseCount($table, 0); + } + + /** @test */ + public function can_count_reactions() + { + $article = Article::factory()->create(); + $users = User::factory(2)->create(); + $table = (new Reaction)->getTable(); + + $this->assertEquals(0, Reaction::count($article, 'reaction_1')); + + Reaction::add($article, $users[0], 'reaction_1'); + $this->assertEquals(1, Reaction::count($article, 'reaction_1')); + $this->assertEquals(0, Reaction::count($article, 'reaction_2')); + + Reaction::add($article, $users[0], 'reaction_1'); + Reaction::add($article, $users[1], 'reaction_1'); + $this->assertEquals(2, Reaction::count($article, 'reaction_1')); + $this->assertEquals(0, Reaction::count($article, 'reaction_2')); + } + + /** @test */ + public function can_check_if_user_has_reaction() + { + $article = Article::factory()->create(); + $users = User::factory(2)->create(); + $table = (new Reaction)->getTable(); + + $this->assertFalse(Reaction::has($article, $users[0], 'reaction_1')); + $this->assertFalse(Reaction::has($article, $users[1], 'reaction_1')); + + Reaction::add($article, $users[0], 'reaction_1'); + $this->assertTrue(Reaction::has($article, $users[0], 'reaction_1')); + $this->assertFalse(Reaction::has($article, $users[1], 'reaction_1')); + } + + /** @test */ + public function cannot_toggle_an_invalid_reaction_value_null_fails() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + $this->expectException(InvalidMarkValueException::class); + Reaction::toggle($article, $user); + } + + /** @test */ + public function cannot_toggle_an_invalid_reaction_value_fails() + { + $article = Article::factory()->create(); + $user = User::factory()->create(); + + $this->expectException(InvalidMarkValueException::class); + Reaction::toggle($article, $user, 'not_valid_value'); + } + + /** @test */ + public function can_toggle_a_reaction() + { + $article = Article::factory()->create(); + $users = User::factory(2)->create(); + $table = (new Reaction)->getTable(); + + Reaction::toggle($article, $users[0], 'reaction_1'); + $this->assertDatabaseCount($table, 1); + $this->assertDatabaseHas($table, [ + 'user_id' => $users[0]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_1', + ]); + + Reaction::toggle($article, $users[0], 'reaction_2'); + $this->assertDatabaseCount($table, 2); + $this->assertDatabaseHas($table, [ + 'user_id' => $users[0]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_2', + ]); + + Reaction::toggle($article, $users[0], 'reaction_2'); + $this->assertDatabaseCount($table, 1); + $this->assertDatabaseMissing($table, [ + 'user_id' => $users[0]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_2', + ]); + + Reaction::toggle($article, $users[1], 'reaction_3'); + $this->assertDatabaseCount($table, 2); + $this->assertDatabaseHas($table, [ + 'user_id' => $users[1]->getKey(), + 'markable_id' => $article->getKey(), + 'markable_type' => $article->getMorphClass(), + 'value' => 'reaction_3', + ]); + } +} diff --git a/tests/TestCase.php b/tests/TestCase.php new file mode 100644 index 0000000..65e708e --- /dev/null +++ b/tests/TestCase.php @@ -0,0 +1,66 @@ + 'Maize\\Markable\\Database\\Factories\\'.class_basename($modelName).'Factory' + ); + } + + protected function getPackageProviders($app) + { + return [ + MarkableServiceProvider::class, + ]; + } + + public function getEnvironmentSetUp($app) + { + $app['config']->set('database.default', 'sqlite'); + $app['config']->set('database.connections.sqlite', [ + 'driver' => 'sqlite', + 'database' => ':memory:', + 'prefix' => '', + ]); + + $app['config']->set('markable.user_model', User::class); + $app['config']->set('markable.allowed_values.reaction', [ + 'reaction_1', + 'reaction_2', + 'reaction_3', + 'reaction_4', + ]); + + include_once __DIR__.'/../database/migrations/create_users_table.php.stub'; + (new \CreateUsersTable())->up(); + + include_once __DIR__.'/../database/migrations/create_articles_table.php.stub'; + (new \CreateArticlesTable())->up(); + + include_once __DIR__.'/../database/migrations/create_posts_table.php.stub'; + (new \CreatePostsTable())->up(); + + include_once __DIR__.'/../database/migrations/create_likes_table.php.stub'; + (new \CreateLikesTable())->up(); + + include_once __DIR__.'/../database/migrations/create_favorites_table.php.stub'; + (new \CreateFavoritesTable())->up(); + + include_once __DIR__.'/../database/migrations/create_bookmarks_table.php.stub'; + (new \CreateBookmarksTable())->up(); + + include_once __DIR__.'/../database/migrations/create_reactions_table.php.stub'; + (new \CreateReactionsTable())->up(); + } +}