tests and changes

This commit is contained in:
Nikhil
2025-04-14 03:59:43 +05:30
parent 857b3660b4
commit d08bf8f564
2 changed files with 517 additions and 7 deletions

View File

@@ -329,6 +329,512 @@ dispatchMain()""";
SupportedUriSchemes.https,
),
expectedCode);
}
);
});}
});
test('GET 11', () {
const expectedCode = r"""
import Foundation
import Alamofire
let url = "https://api.apidash.dev/humanize/social?num=8700000&digits=3"
AF.request(url, method: .get, headers: ["User-Agent": "Test Agent"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()""";
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelGet11,
SupportedUriSchemes.https,
),
expectedCode);
});
test('GET 12', () {
const expectedCode = r"""
import Foundation
import Alamofire
let url = "https://api.apidash.dev/humanize/social"
AF.request(url, method: .get)
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()""";
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelGet12,
SupportedUriSchemes.https,
),
expectedCode);
});
},
);
group(
'HTTPVerb.head',
() {
test('HEAD 1', () {
const expectedCode = r"""
import Foundation
import Alamofire
let url = "https://api.apidash.dev"
AF.request(url, method: .head)
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()""";
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelHead1,
SupportedUriSchemes.https,
),
expectedCode);
});
test('HEAD 2', () {
const expectedCode = r"""
import Foundation
import Alamofire
let url = "https://api.apidash.dev"
AF.request(url, method: .head)
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()""";
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelHead2,
SupportedUriSchemes.https,
),
expectedCode);
});
},
);
group(
"HTTPVerb.post",
() {
test('POST 1', () {
const expectedCode = r'''
import Foundation
import Alamofire
let textString = """
{\n\"text\": \"I LOVE Flutter\"\n}
"""
let textData = textString.data(using: .utf8)
let url = "https://api.apidash.dev/case/lower"
AF.upload(textData!, to: url, method: .post, headers: ["Content-Type": "text/plain"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()''';
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelPost1,
SupportedUriSchemes.https,
),
expectedCode);
});
test('POST 2', () {
const expectedCode = r'''
import Foundation
import Alamofire
let jsonString = """
{\n\"text\": \"I LOVE Flutter\",\n\"flag\": null,\n\"male\": true,\n\"female\": false,\n\"no\": 1.2,\n\"arr\": [\"null\", \"true\", \"false\", null]\n}
"""
let jsonData = jsonString.data(using: .utf8)
let url = "https://api.apidash.dev/case/lower"
AF.upload(jsonData!, to: url, method: .post, headers: ["Content-Type": "application/json"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()''';
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelPost2,
SupportedUriSchemes.https,
),
expectedCode);
});
test('POST 3', () {
const expectedCode = r'''
import Foundation
import Alamofire
let jsonString = """
{\n\"text\": \"I LOVE Flutter\"\n}
"""
let jsonData = jsonString.data(using: .utf8)
let url = "https://api.apidash.dev/case/lower"
AF.upload(jsonData!, to: url, method: .post, headers: ["User-Agent": "Test Agent", "Content-Type": "application/json"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()''';
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelPost3,
SupportedUriSchemes.https,
),
expectedCode);
});
// test('POST 4', () {
// const expectedCode = r"""
// """;
// expect(
// codeGen.getCode(
// CodegenLanguage.swiftAlamofire,
// requestModelPost4,
// SupportedUriSchemes.https,
// ),
// expectedCode);
// });
// test('POST 5', () {
// const expectedCode = r"""
// """;
// expect(
// codeGen.getCode(
// CodegenLanguage.swiftAlamofire,
// requestModelPost5,
// SupportedUriSchemes.https,
// ),
// expectedCode);
// });
// test('POST 6', () {
// const expectedCode = r"""
// """;
// expect(
// codeGen.getCode(
// CodegenLanguage.swiftAlamofire,
// requestModelPost6,
// SupportedUriSchemes.https,
// ),
// expectedCode);
// });
// test('POST 7', () {
// const expectedCode = r"""
// """;
// expect(
// codeGen.getCode(
// CodegenLanguage.swiftAlamofire,
// requestModelPost7,
// SupportedUriSchemes.https,
// ),
// expectedCode);
// });
test('POST 8', () {
const expectedCode = r"""
""";
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelPost8,
SupportedUriSchemes.https,
),
expectedCode);
});
// test('POST 9', () {
// const expectedCode = r"""
// """;
// expect(
// codeGen.getCode(
// CodegenLanguage.swiftAlamofire,
// requestModelPost9,
// SupportedUriSchemes.https,
// ),
// expectedCode);
// });
// test('POST 10', () {
// const expectedCode = r"""
// """;
// expect(
// codeGen.getCode(
// CodegenLanguage.swiftAlamofire,
// requestModelPost10,
// SupportedUriSchemes.https,
// ),
// expectedCode);
// });
},
);
group(
'HTTPVerb.put',
() {
test('PUT 1', () {
const expectedCode = r'''
import Foundation
import Alamofire
let jsonString = """
{\n\"name\": \"morpheus\",\n\"job\": \"zion resident\"\n}
"""
let jsonData = jsonString.data(using: .utf8)
let url = "https://reqres.in/api/users/2"
AF.upload(jsonData!, to: url, method: .put, headers: ["Content-Type": "application/json"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()''';
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelPut1,
SupportedUriSchemes.https,
),
expectedCode);
});
},
);
group(
'HTTPVerb.patch',
() {
test('PATCH 1', () {
const expectedCode = r'''
import Foundation
import Alamofire
let jsonString = """
{\n\"name\": \"marfeus\",\n\"job\": \"accountant\"\n}
"""
let jsonData = jsonString.data(using: .utf8)
let url = "https://reqres.in/api/users/2"
AF.upload(jsonData!, to: url, method: .patch, headers: ["Content-Type": "application/json"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()''';
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelPatch1,
SupportedUriSchemes.https,
),
expectedCode);
});
},
);
group(
'HTTPVerb.delete',
() {
test('DELETE 1', () {
const expectedCode = r"""
import Foundation
import Alamofire
let url = "https://reqres.in/api/users/2"
AF.request(url, method: .delete)
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()""";
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelDelete1,
SupportedUriSchemes.https,
),
expectedCode);
});
test('DELETE 2', () {
const expectedCode = r'''
import Foundation
import Alamofire
let jsonString = """
{\n\"name\": \"marfeus\",\n\"job\": \"accountant\"\n}
"""
let jsonData = jsonString.data(using: .utf8)
let url = "https://reqres.in/api/users/2"
AF.upload(jsonData!, to: url, method: .delete, headers: ["Content-Type": "application/json"])
.responseData { response in
switch response.result {
case .success(let data):
if let responseString = String(data: data, encoding: .utf8) {
print("Response: \(responseString)")
}
case .failure(let error):
print("Error: \(error)")
}
exit(0)
}
dispatchMain()''';
expect(
codeGen.getCode(
CodegenLanguage.swiftAlamofire,
requestModelDelete2,
SupportedUriSchemes.https,
),
expectedCode);
});
},
);
}