PHP code example of settleup / pest-plugin-visualizations
1. Go to this page and download the library: Download settleup/pest-plugin-visualizations library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
settleup / pest-plugin-visualizations example snippets
use function SettleUp\PestPluginVisualizations\dataGrid;
it('has the expected schema', function () {
dataGrid(UserDataGrid::class)
->assertColumnCount(3)
->assertHasColumn('ID')
->assertHasColumn('Name')
->assertHasColumn('Email')
->assertMissingColumn('Password')
->assertColumnIsRowKey('ID')
->assertColumnIsSortable('Name')
->assertColumnIsFilterable('Email')
->assertColumnIsVisible('Name')
->assertHasFloatingFilter('Joined On')
->assertMissingFloatingFilter('Created At');
});
use function SettleUp\PestPluginVisualizations\chart;
it('has the expected schema', function () {
chart(RevenueChart::class)
->assertHasLabel('date')
->assertHasDataset('revenue')
->assertHasDataset('refunds')
->assertDatasetCount(2)
->assertMissingDataset('costs')
->assertMissingFloatingFilter('date_range');
});
use SettleUp\Visualizations\Builders\FilterBuilder;
use SettleUp\Visualizations\Data\VisualizationData;
use function SettleUp\PestPluginVisualizations\chart;
it('returns chart data for a specific date', function () {
DB::table('orders')->insert([
['order_date' => '2024-01-01', 'total' => 100.00, 'refunds' => 0.00],
['order_date' => '2024-01-02', 'total' => 200.00, 'refunds' => 10.00],
]);
chart(RevenueChart::class)
->usingFilterSets(fn (VisualizationData $data) => $data->addAndFilterSet(
fn (FilterBuilder $b) => $b->equals('date', '2024-01-01')
))
->assertResultCount(1)
->assertResultContains(['date' => '2024-01-01'])
->assertResultMissing(['date' => '2024-01-02']);
});
use function SettleUp\PestPluginVisualizations\metric;
it('has the expected schema', function () {
metric(RevenueMetric::class)
->assertHasValue('revenue')
->assertMissingFloatingFilter('date_range');
});
use SettleUp\Visualizations\Builders\FilterBuilder;
use SettleUp\Visualizations\Data\VisualizationData;
use function SettleUp\PestPluginVisualizations\metric;
it('aggregates revenue correctly', function () {
DB::table('orders')->insert([
['order_date' => '2024-01-01', 'total' => 100.00],
['order_date' => '2024-01-02', 'total' => 200.00],
['order_date' => '2024-01-03', 'total' => 50.00],
]);
metric(RevenueMetric::class)->assertAggregateEquals(350.0);
});
it('filters the aggregate via floating filter', function () {
DB::table('orders')->insert([
['order_date' => '2024-01-01', 'total' => 100.00],
['order_date' => '2024-01-02', 'total' => 200.00],
]);
metric(RevenueWithFloatingFiltersMetric::class)
->usingFilterSets(fn (VisualizationData $data) => $data->addAndFilterSet(
fn (FilterBuilder $b) => $b->equals('date_range', '2024-01-01')
))
->assertAggregateEquals(100.0);
});
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.