LCOV - code coverage report
Current view: top level - list/paged - page.dart (source / functions) Hit Total Coverage
Test: lcov.info Lines: 9 13 69.2 %
Date: 2019-10-16 20:04:22 Functions: 0 0 -

          Line data    Source code
       1             : import 'package:equatable/equatable.dart';
       2             : import 'package:flutter/foundation.dart';
       3             : 
       4             : /// Pagination information.
       5             : @immutable
       6             : class Page extends Equatable {
       7             :   final int number;
       8             :   final int size;
       9             : 
      10             :   /// Creates a [Page] object.
      11             :   /// [number] - zero based page index.
      12             :   /// [size] - the size of the page to be returned.
      13           2 :   const Page({
      14             :     this.number = 0,
      15             :     this.size,
      16           2 :   })  : assert(number >= 0, 'Page index must not be less than zero'),
      17           2 :         assert(size >= 1, 'Page size must not be less than one');
      18             : 
      19             :   /// Creates first page.
      20             :   /// [size] - the size of the page to be returned.
      21           4 :   Page.first({int size}) : this(number: 0, size: size);
      22             : 
      23             :   /// Returns the offset to be taken according to page and page size.
      24           8 :   int get offset => size * number;
      25             : 
      26             :   /// Returns true when this is the first page.
      27           3 :   bool get isFirst => number == 0;
      28             : 
      29             :   /// Returns next [Page].
      30          10 :   Page next() => Page(number: number + 1, size: size);
      31             : 
      32             :   /// Returns the previous [Page] or the first [Page] if the current
      33             :   /// one already is the first one.
      34           1 :   Page previous() =>
      35           6 :       (number == 0) ? this : Page(number: number - 1, size: size);
      36             : 
      37           0 :   @override
      38           0 :   List<Object> get props => [number, size];
      39             : 
      40           0 :   @override
      41           0 :   String toString() => 'Page (number: $number, size: $size)';
      42             : }

Generated by: LCOV version 1.14