fix: fix dart code gen tests' matcher

This commit is contained in:
laiiihz
2023-12-23 16:57:49 +08:00
parent 67f80563aa
commit 20be6b1ba1
2 changed files with 62 additions and 188 deletions

View File

@ -1,17 +1,8 @@
import 'package:apidash/codegen/dart/dio.dart'; import 'package:apidash/codegen/dart/dio.dart';
import 'package:dart_style/dart_style.dart';
import 'package:test/test.dart'; import 'package:test/test.dart';
import '../request_models.dart'; import '../request_models.dart';
final _formatter = DartFormatter(fixes: [
StyleFix.singleCascadeStatements
]);
extension on String {
// format code before compare
String get format => _formatter.format(this);
}
void main() { void main() {
final dartDioCodeGen = DartDioCodeGen(); final dartDioCodeGen = DartDioCodeGen();
@ -34,10 +25,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet1, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet1, "https"),
expectedCode.format,
);
}); });
test('GET 2', () { test('GET 2', () {
@ -62,10 +50,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet2, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet2, "https"),
expectedCode.format,
);
}); });
test('GET 3', () { test('GET 3', () {
@ -90,10 +75,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet3, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet3, "https"),
expectedCode.format,
);
}); });
test('GET 4', () { test('GET 4', () {
@ -124,10 +106,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet4, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet4, "https"),
expectedCode.format,
);
}); });
test('GET 5', () { test('GET 5', () {
@ -152,10 +131,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet5, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet5, "https"),
expectedCode.format,
);
}); });
test('GET 6', () { test('GET 6', () {
@ -182,10 +158,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet6, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet6, "https"),
expectedCode.format,
);
}); });
test('GET 7', () { test('GET 7', () {
@ -206,10 +179,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet7, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet7, "https"),
expectedCode.format,
);
}); });
test('GET 8', () { test('GET 8', () {
@ -236,10 +206,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelGet8, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelGet8, "https"),
expectedCode.format,
);
}); });
}); });
@ -262,10 +229,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelHead1, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelHead1, "https"),
expectedCode.format,
);
}); });
test('HEAD 2', () { test('HEAD 2', () {
@ -286,8 +250,7 @@ void main() async {
} }
} }
"""; """;
expect(dartDioCodeGen.getCode(requestModelHead2, "http"), expect(dartDioCodeGen.getCode(requestModelHead2, "http"), expectedCode);
expectedCode.format);
}); });
}); });
@ -316,10 +279,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelPost1, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelPost1, "https"),
expectedCode.format,
);
}); });
test('POST 2', () { test('POST 2', () {
@ -347,10 +307,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelPost2, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelPost2, "https"),
expectedCode.format,
);
}); });
test('POST 3', () { test('POST 3', () {
@ -380,10 +337,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelPost3, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelPost3, "https"),
expectedCode.format,
);
}); });
}); });
group('PUT Request', () { group('PUT Request', () {
@ -413,10 +367,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelPut1, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelPut1, "https"),
expectedCode.format,
);
}); });
}); });
@ -447,10 +398,7 @@ void main() async {
} }
} }
"""; """;
expect( expect(dartDioCodeGen.getCode(requestModelPatch1, "https"), expectedCode);
dartDioCodeGen.getCode(requestModelPatch1, "https"),
expectedCode.format,
);
}); });
}); });
@ -474,9 +422,7 @@ void main() async {
} }
"""; """;
expect( expect(
dartDioCodeGen.getCode(requestModelDelete1, "https"), dartDioCodeGen.getCode(requestModelDelete1, "https"), expectedCode);
expectedCode.format,
);
}); });
test('DELETE 2', () { test('DELETE 2', () {
@ -506,9 +452,7 @@ void main() async {
} }
"""; """;
expect( expect(
dartDioCodeGen.getCode(requestModelDelete2, "https"), dartDioCodeGen.getCode(requestModelDelete2, "https"), expectedCode);
expectedCode.format,
);
}); });
}); });
} }

View File

@ -1,17 +1,8 @@
import 'package:apidash/codegen/dart/http.dart'; import 'package:apidash/codegen/dart/http.dart';
import 'package:dart_style/dart_style.dart';
import 'package:test/test.dart'; import 'package:test/test.dart';
import '../request_models.dart'; import '../request_models.dart';
final _formatter = DartFormatter(fixes: [
StyleFix.singleCascadeStatements
]);
extension on String {
// format code before compare
String get format => _formatter.format(this);
}
void main() { void main() {
final dartHttpCodeGen = DartHttpCodeGen(); final dartHttpCodeGen = DartHttpCodeGen();
@ -28,17 +19,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet1, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet1, "https"),
expectedCode.format,
);
}); });
test('GET 2', () { test('GET 2', () {
@ -56,21 +43,19 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect(
dartHttpCodeGen.getCode(requestModelGet2, "https"), expect(dartHttpCodeGen.getCode(requestModelGet2, "https"), expectedCode);
expectedCode.format,
);
}); });
test('GET 3', () { test('GET 3', () {
const expectedCode = r"""import 'package:http/http.dart' as http; const expectedCode = r"""import 'package:http/http.dart' as http;
void main() async { void main() async {
var uri = Uri.parse('https://api.foss42.com/country/data?code=US'); var uri = Uri.parse('https://api.foss42.com/country/data?code=US');
@ -85,17 +70,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet3, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet3, "https"),
expectedCode.format,
);
}); });
test('GET 4', () { test('GET 4', () {
@ -119,17 +100,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet4, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet4, "https"),
expectedCode.format,
);
}); });
test('GET 5', () { test('GET 5', () {
@ -149,17 +126,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet5, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet5, "https"),
expectedCode.format,
);
}); });
test('GET 6', () { test('GET 6', () {
@ -182,17 +155,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet6, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet6, "https"),
expectedCode.format,
);
}); });
test('GET 7', () { test('GET 7', () {
@ -207,17 +176,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet7, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet7, "https"),
expectedCode.format,
);
}); });
test('GET 8', () { test('GET 8', () {
@ -240,17 +205,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelGet8, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelGet8, "https"),
expectedCode.format,
);
}); });
}); });
@ -267,17 +228,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelHead1, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelHead1, "https"),
expectedCode.format,
);
}); });
test('HEAD 2', () { test('HEAD 2', () {
@ -292,15 +249,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect(dartHttpCodeGen.getCode(requestModelHead2, "http"), expect(dartHttpCodeGen.getCode(requestModelHead2, "http"), expectedCode);
expectedCode.format);
}); });
}); });
@ -327,17 +282,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelPost1, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelPost1, "https"),
expectedCode.format,
);
}); });
test('POST 2', () { test('POST 2', () {
@ -362,17 +313,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelPost2, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelPost2, "https"),
expectedCode.format,
);
}); });
test('POST 3', () { test('POST 3', () {
@ -400,17 +347,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelPost3, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelPost3, "https"),
expectedCode.format,
);
}); });
}); });
group('PUT Request', () { group('PUT Request', () {
@ -437,17 +380,13 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(dartHttpCodeGen.getCode(requestModelPut1, "https"), expectedCode);
dartHttpCodeGen.getCode(requestModelPut1, "https"),
expectedCode.format,
);
}); });
}); });
@ -475,17 +414,14 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(
dartHttpCodeGen.getCode(requestModelPatch1, "https"), dartHttpCodeGen.getCode(requestModelPatch1, "https"), expectedCode);
expectedCode.format,
);
}); });
}); });
@ -502,17 +438,14 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(
dartHttpCodeGen.getCode(requestModelDelete1, "https"), dartHttpCodeGen.getCode(requestModelDelete1, "https"), expectedCode);
expectedCode.format,
);
}); });
test('DELETE 2', () { test('DELETE 2', () {
@ -538,17 +471,14 @@ void main() async {
if (statusCode >= 200 && statusCode < 300) { if (statusCode >= 200 && statusCode < 300) {
print('Status Code: $statusCode'); print('Status Code: $statusCode');
print('Response Body: ${response.body}'); print('Response Body: ${response.body}');
} } else {
else{
print('Error Status Code: $statusCode'); print('Error Status Code: $statusCode');
print('Error Response Body: ${response.body}'); print('Error Response Body: ${response.body}');
} }
} }
"""; """;
expect( expect(
dartHttpCodeGen.getCode(requestModelDelete2, "https"), dartHttpCodeGen.getCode(requestModelDelete2, "https"), expectedCode);
expectedCode.format,
);
}); });
}); });
} }