LCOV - code coverage report
Current view: top level - src/database/repository/editor - helper_editor_repository.dart (source / functions) Hit Total Coverage
Test: lcov.info Lines: 14 28 50.0 %
Date: 2020-12-04 18:41:24 Functions: 0 0 -

          Line data    Source code
       1             : import 'dart:convert';
       2             : import 'dart:io';
       3             : 
       4             : import 'package:flutter/material.dart';
       5             : import 'package:http/http.dart';
       6             : import 'package:pal/src/database/adapter/helper_entity_adapter.dart' as EntityAdapter;
       7             : import 'package:pal/src/database/entity/helper/helper_entity.dart';
       8             : import 'package:pal/src/database/entity/pageable.dart';
       9             : import 'package:pal/src/database/repository/base_repository.dart';
      10             : import 'package:pal/src/services/http_client/base_client.dart';
      11             : 
      12             : class EditorHelperRepository extends BaseHttpRepository {
      13             : 
      14             :   final EntityAdapter.HelperEntityAdapter _adapter = EntityAdapter.HelperEntityAdapter();
      15             : 
      16           7 :   EditorHelperRepository({
      17             :     @required HttpClient httpClient,
      18           7 :   }) : super(httpClient: httpClient);
      19             : 
      20           1 :   Future<HelperEntity> createHelper(
      21             :       final String pageId, final HelperEntity createHelper) async {
      22           1 :     final payload = jsonEncode(createHelper);
      23           3 :     final Response response = await this.httpClient.post(
      24           1 :           'editor/pages/$pageId/helpers',
      25             :           body: payload,
      26             :         );
      27           1 :     if (response == null || response.body == null)
      28           0 :       throw new UnknownHttpError("NO_RESULT");
      29           3 :     return this._adapter.parse(response.body);
      30             :   }
      31             : 
      32           1 :   Future<HelperEntity> updateHelper(
      33             :     final String pageId,
      34             :     final HelperEntity updatedHelper,
      35             :   ) async {
      36           1 :     final payload = jsonEncode(updatedHelper);
      37           3 :     final Response response = await this.httpClient.put(
      38           2 :           'editor/pages/$pageId/helpers/${updatedHelper?.id}',
      39             :           body: payload);
      40           1 :     if (response == null || response.body == null)
      41           0 :       throw new UnknownHttpError('NO_RESULT');
      42           3 :     return this._adapter.parse(response.body);
      43             :   }
      44             : 
      45           0 :   Future<Pageable<HelperEntity>> getPage(
      46             :       String pageId, int page, int pageSize) async {
      47           0 :     final Response response = await this
      48           0 :         .httpClient
      49           0 :         .get('editor/pages/$pageId/helpers?page=$page&pageSize=$pageSize');
      50           0 :     return this._adapter.parsePage(response.body);
      51             :   }
      52             : 
      53           0 :   Future<void> updateHelperPriority(
      54             :     final String pageId,
      55             :     final Map<String, int> priority,
      56             :   ) async {
      57           0 :     await this.httpClient.patch(
      58           0 :           'editor/pages/$pageId/helpers/priorities',
      59           0 :           body: jsonEncode(priority),
      60             :         );
      61             :   }
      62             : 
      63           0 :   Future<void> deleteHelper(
      64             :     final String pageId,
      65             :     final String helperId,
      66             :   ) async {
      67           0 :     await this.httpClient.delete(
      68           0 :           'editor/pages/$pageId/helpers/$helperId',
      69             :         );
      70             :   }
      71             : }

Generated by: LCOV version 1.14