List Repos: Print the http req as curl

Makes it easier to test
This commit is contained in:
Vishesh Handa
2020-09-05 11:03:15 +02:00
parent 43fd939103
commit ccf5f65e55
3 changed files with 21 additions and 0 deletions

View File

@ -2,11 +2,13 @@ import 'dart:async';
import 'dart:convert'; import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'package:flutter/foundation.dart' as foundation;
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart'; import 'package:gitjournal/utils/logger.dart';
import 'githost.dart'; import 'githost.dart';
@ -88,6 +90,10 @@ class GitHub implements GitHost {
HttpHeaders.authorizationHeader: _buildAuthHeader(), HttpHeaders.authorizationHeader: _buildAuthHeader(),
}; };
if (foundation.kDebugMode) {
print(toCurlCommand(url, headers));
}
var response = await http.get(url, headers: headers); var response = await http.get(url, headers: headers);
if (response.statusCode != 200) { if (response.statusCode != 200) {
Log.d("Github listRepos: Invalid response " + Log.d("Github listRepos: Invalid response " +

View File

@ -3,11 +3,13 @@ import 'dart:convert';
import 'dart:io'; import 'dart:io';
import 'dart:math'; import 'dart:math';
import 'package:flutter/foundation.dart' as foundation;
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:http/http.dart' as http; import 'package:http/http.dart' as http;
import 'package:url_launcher/url_launcher.dart'; import 'package:url_launcher/url_launcher.dart';
import 'package:gitjournal/utils.dart';
import 'package:gitjournal/utils/logger.dart'; import 'package:gitjournal/utils/logger.dart';
import 'githost.dart'; import 'githost.dart';
@ -75,6 +77,10 @@ class GitLab implements GitHost {
var url = var url =
"https://gitlab.com/api/v4/projects?simple=true&membership=true&order_by=last_activity_at&access_token=$_accessCode"; "https://gitlab.com/api/v4/projects?simple=true&membership=true&order_by=last_activity_at&access_token=$_accessCode";
if (foundation.kDebugMode) {
print(toCurlCommand(url, {}));
}
var response = await http.get(url); var response = await http.get(url);
if (response.statusCode != 200) { if (response.statusCode != 200) {
Log.d("GitLab listRepos: Invalid response " + Log.d("GitLab listRepos: Invalid response " +

View File

@ -78,3 +78,12 @@ bool folderWithSpecExists(BuildContext context, String spec) {
return rootFolder.getFolderWithSpec(spec) != null; return rootFolder.getFolderWithSpec(spec) != null;
} }
String toCurlCommand(String url, Map<String, String> headers) {
var headersStr = "";
headers.forEach((key, value) {
headersStr += ' -H "$key: $value" ';
});
return "curl -X GET '$url' $headersStr";
}