Revert "Added python http client codegen and Updated python into language dropdown"

This reverts commit 637ca36fef8fd73ef9decb63aff864264274a927.
This commit is contained in:
morpheus-30
2023-07-04 23:04:32 +05:30
parent e2d232f462
commit f229c2aa95
4 changed files with 1 additions and 118 deletions

View File

@ -1,5 +1,4 @@
import 'package:apidash/codegen/kotlin/pkg_okhttp.dart'; import 'package:apidash/codegen/kotlin/pkg_okhttp.dart';
import 'python/pkg_http_client.dart';
import 'package:apidash/consts.dart'; import 'package:apidash/consts.dart';
import 'package:apidash/models/models.dart' show RequestModel; import 'package:apidash/models/models.dart' show RequestModel;
@ -16,8 +15,6 @@ class Codegen {
return DartHttpCodeGen().getCode(requestModel, defaultUriScheme); return DartHttpCodeGen().getCode(requestModel, defaultUriScheme);
case CodegenLanguage.kotlinOkHttp: case CodegenLanguage.kotlinOkHttp:
return KotlinOkHttpCodeGen().getCode(requestModel); return KotlinOkHttpCodeGen().getCode(requestModel);
case CodegenLanguage.pythonHttpClient:
return PythonHttpClient().getCode(requestModel);
default: default:
throw ArgumentError('Invalid codegenLanguage'); throw ArgumentError('Invalid codegenLanguage');
} }

View File

@ -1,82 +0,0 @@
import 'package:apidash/consts.dart';
import '../../models/request_model.dart';
class PythonHttpClient {
final String headerSnippet = """
import http.client
import json
""";
final String footerSnippet = """
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
""";
String getCode(RequestModel requestModel) {
String result = "";
result += headerSnippet;
result +=
"conn = http.client.HTTPSConnection('${getUrl(requestModel)["host"]}'${getUrl(requestModel)["port"]})\n";
result += "payload = json.dumps(${requestModel.requestBody ?? ""})\n";
result +=
"""headers = {\n'Content-Type':'${requestModel.requestBodyContentType == ContentType.json ? 'application/json' : 'text/plain'}'\n${addHeaders(requestModel)}},\n""";
result +=
"conn.request(\"${requestModel.method.name.toUpperCase()}\", \"${getUrl(requestModel)["endpoint"]}${addQueryParams(requestModel)}\", payload, headers)\n";
result += footerSnippet;
return result;
}
String addHeaders(RequestModel requestModel) {
String result = "";
if (requestModel.requestHeaders == null) {
return result;
}
for (final header in requestModel.requestHeaders!) {
result += """'${header.k}':'${header.v}',\n""";
}
return result;
}
String addQueryParams(RequestModel requestModel) {
String result = "";
if (requestModel.requestParams == null) {
return result;
}
result += "?";
for (final queryParam in requestModel.requestParams!) {
result +=
"${queryParam.k.toString().replaceAll(" ", "%20")}=${queryParam.v.toString().replaceAll(" ", "%20")}&";
}
return result.substring(0, result.length - 1);
}
Map<String, String> getUrl(RequestModel requestModel) {
String result = "";
if (requestModel.url.startsWith('http://') ||
requestModel.url.startsWith('https://')) {
result = requestModel.url.substring(requestModel.url.indexOf('://') + 3);
}else{
result = requestModel.url;
}
Map<String, String> resultMap = {};
if (result.contains(":")) {
resultMap["host"] = result.substring(0, result.indexOf(':'));
resultMap["port"] =
",${result.substring(result.indexOf(':') + 1, result.contains('/') ? result.indexOf('/') : result.length)}";
resultMap["endpoint"] =
"/${result.substring(result.contains('/') ? result.indexOf('/') + 1 : result.length)}";
} else {
resultMap["host"] = result.contains("/")
? result.substring(0, result.indexOf('/'))
: result;
resultMap["port"] = "";
resultMap["endpoint"] =
"/${result.substring(result.contains('/') ? result.indexOf('/') + 1 : result.length)}";
}
return resultMap;
}
}

View File

@ -230,8 +230,7 @@ const kDefaultContentType = ContentType.json;
enum CodegenLanguage { enum CodegenLanguage {
dartHttp("Dart (http)"), dartHttp("Dart (http)"),
kotlinOkHttp("Kotlin (OkHttp)"), kotlinOkHttp("Kotlin (OkHttp)");
pythonHttpClient("Python (http.client)");
const CodegenLanguage(this.label); const CodegenLanguage(this.label);
final String label; final String label;

View File

@ -1,31 +0,0 @@
// This is a basic Flutter widget test.
//
// To perform an interaction with a widget in your test, use the WidgetTester
// utility in the flutter_test package. For example, you can send tap and scroll
// gestures. You can also use WidgetTester to find child widgets in the widget
// tree, read text, and verify that the values of widget properties are correct.
import 'package:apidash/app.dart';
import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:apidash/main.dart';
void main() {
testWidgets('Counter increments smoke test', (WidgetTester tester) async {
// Build our app and trigger a frame.
await tester.pumpWidget(const DashApp());
// Verify that our counter starts at 0.
expect(find.text('0'), findsOneWidget);
expect(find.text('1'), findsNothing);
// Tap the '+' icon and trigger a frame.
await tester.tap(find.byIcon(Icons.add));
await tester.pump();
// Verify that our counter has incremented.
expect(find.text('0'), findsNothing);
expect(find.text('1'), findsOneWidget);
});
}