feat: Adds api route tests. Tested user interface works as expected, still needs some work on vendors form.
This commit is contained in:
@@ -2,9 +2,7 @@ import CasePathsCore
|
||||
import Foundation
|
||||
@preconcurrency import URLRouting
|
||||
|
||||
// TODO: Switch shared to be on API routes not view routes??
|
||||
|
||||
public enum ApiRoute: Sendable {
|
||||
public enum ApiRoute: Sendable, Equatable {
|
||||
|
||||
case employee(EmployeeApiRoute)
|
||||
case purchaseOrder(PurchaseOrderApiRoute)
|
||||
@@ -37,7 +35,7 @@ public enum ApiRoute: Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public enum EmployeeApiRoute: Sendable {
|
||||
public enum EmployeeApiRoute: Sendable, Equatable {
|
||||
case create(Employee.Create)
|
||||
case delete(id: Employee.ID)
|
||||
case get(id: Employee.ID)
|
||||
@@ -72,7 +70,7 @@ public enum ApiRoute: Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public enum PurchaseOrderApiRoute: Sendable {
|
||||
public enum PurchaseOrderApiRoute: Sendable, Equatable {
|
||||
case create(PurchaseOrder.Create)
|
||||
case delete(id: PurchaseOrder.ID)
|
||||
case get(id: PurchaseOrder.ID)
|
||||
@@ -111,7 +109,7 @@ public enum ApiRoute: Sendable {
|
||||
}
|
||||
|
||||
// TODO: Add login / logout.
|
||||
public enum UserApiRoute: Sendable {
|
||||
public enum UserApiRoute: Sendable, Equatable {
|
||||
case create(User.Create)
|
||||
case delete(id: User.ID)
|
||||
case get(id: User.ID)
|
||||
@@ -146,7 +144,7 @@ public enum ApiRoute: Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public enum VendorApiRoute: Sendable {
|
||||
public enum VendorApiRoute: Sendable, Equatable {
|
||||
case index(withBranches: Bool? = nil)
|
||||
case create(Vendor.Create)
|
||||
case delete(id: Vendor.ID)
|
||||
@@ -173,8 +171,10 @@ public enum ApiRoute: Sendable {
|
||||
Path { rootPath }
|
||||
Method.get
|
||||
Query {
|
||||
Field("branches", default: nil) {
|
||||
Optionally { Bool.parser() }
|
||||
Optionally {
|
||||
Field("branches", default: nil) {
|
||||
Bool.parser()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -186,7 +186,7 @@ public enum ApiRoute: Sendable {
|
||||
}
|
||||
}
|
||||
|
||||
public enum VendorBranchApiRoute: Sendable {
|
||||
public enum VendorBranchApiRoute: Sendable, Equatable {
|
||||
case create(VendorBranch.Create)
|
||||
case delete(id: VendorBranch.ID)
|
||||
case get(id: VendorBranch.ID)
|
||||
@@ -212,7 +212,7 @@ public enum ApiRoute: Sendable {
|
||||
Path { "vendors"; "branches" }
|
||||
Method.get
|
||||
Query {
|
||||
Field("vendorID", default: nil) { Optionally { VendorBranch.ID.parser() } }
|
||||
Optionally { Field("vendorID", default: nil) { VendorBranch.ID.parser() } }
|
||||
}
|
||||
}
|
||||
Route(.case(Self.update(id:updates:))) {
|
||||
|
||||
Reference in New Issue
Block a user