From a3f84e08ca405233fdb8e2e86024e57380bffaf4 Mon Sep 17 00:00:00 2001 From: Anton Stubenbord Date: Mon, 29 May 2023 11:51:21 +0200 Subject: [PATCH] fix: Add http package --- packages/mock_server/lib/mock_server.dart | 37 +++++++++-------------- packages/mock_server/pubspec.yaml | 1 + 2 files changed, 15 insertions(+), 23 deletions(-) diff --git a/packages/mock_server/lib/mock_server.dart b/packages/mock_server/lib/mock_server.dart index 281209c..01fa9bf 100644 --- a/packages/mock_server/lib/mock_server.dart +++ b/packages/mock_server/lib/mock_server.dart @@ -13,21 +13,19 @@ import 'package:shelf/shelf_io.dart' as shelf_io; import 'package:shelf_router/shelf_router.dart' as shelf_router; import 'package:flutter/services.dart' show rootBundle; -import 'dart:convert'; Logger log = Logger('LocalMockApiServer'); class LocalMockApiServer { - static final host = 'localhost'; + static const host = 'localhost'; - static final port = 3131; + static const port = 3131; static get baseUrl => 'http://$host:$port/'; late shelf_router.Router app; Future> loadFixture(String name) async { - var fixture = - await rootBundle.loadString('packages/mock_server/fixtures/$name.json'); + var fixture = await rootBundle.loadString('packages/mock_server/fixtures/$name.json'); return json.decode(fixture); } @@ -150,13 +148,9 @@ class LocalMockApiServer { app.delete('/api/tags//', (Request req, String tagId) async { log.info('Responding to PUT /api/tags//'); - (createdTags['results'] as List) - .removeWhere((element) => element['id'] == tagId); + (createdTags['results'] as List).removeWhere((element) => element['id'] == tagId); return Response(204, - body: null, - headers: {'Content-Type': 'application/json'}, - encoding: null, - context: null); + body: null, headers: {'Content-Type': 'application/json'}, encoding: null, context: null); }); app.get('/api/storage_paths/', (Request req) async { @@ -185,8 +179,7 @@ class LocalMockApiServer { app.get('/api/documents//thumb/', (Request req, String docId) async { log.info('Responding to /api/documents//thumb/'); - var thumb = await rootBundle - .load('packages/mock_server/fixtures/lorem-ipsum.png'); + var thumb = await rootBundle.load('packages/mock_server/fixtures/lorem-ipsum.png'); try { var resp = Response.ok( http.ByteStream.fromBytes(thumb.buffer.asInt8List()), @@ -198,16 +191,14 @@ class LocalMockApiServer { } }); - app.get('/api/documents//metadata/', - (Request req, String docId) async { + app.get('/api/documents//metadata/', (Request req, String docId) async { log.info('Responding to /api/documents//metadata/'); var data = await loadFixture('metadata'); return JsonMockResponse.ok(data); }); //This is not yet used in the app - app.get('/api/documents//suggestions/', - (Request req, String docId) async { + app.get('/api/documents//suggestions/', (Request req, String docId) async { log.info('Responding to /api/documents//suggestions/'); var data = await loadFixture('suggestions'); return JsonMockResponse.ok(data); @@ -244,10 +235,11 @@ class LocalMockApiServer { var handler = const Pipeline().addMiddleware( logRequests(logger: (message, isError) { - if (isError) + if (isError) { log.severe(message); - else + } else { log.info(message); + } }), ).addHandler(app); @@ -261,15 +253,14 @@ class LocalMockApiServer { extension on Request { Future bodyJsonValue(String param) async { - return jsonDecode(await this.readAsString())?[param]; + return jsonDecode(await readAsString())?[param]; } Future bodyJsonMap() async { - return jsonDecode(await this.readAsString()); + return jsonDecode(await readAsString()); } - String? get accessToken => - this.headers['Authorization']?.split('Bearer ').last; + String? get accessToken => headers['Authorization']?.split('Bearer ').last; } extension JsonMockResponse on Response { diff --git a/packages/mock_server/pubspec.yaml b/packages/mock_server/pubspec.yaml index 0808b48..35f9ea4 100644 --- a/packages/mock_server/pubspec.yaml +++ b/packages/mock_server/pubspec.yaml @@ -13,6 +13,7 @@ dependencies: logging: ^1.1.1 flutter: sdk: flutter + http: ^1.0.0 dev_dependencies: flutter_test: