Update expense for product category (non-inventory type)

This commit is contained in:
2026-06-10 12:42:53 +07:00
parent e09feff36d
commit c3db919531
14 changed files with 444 additions and 170 deletions
+17 -12
View File
@@ -21,8 +21,9 @@ func TestExpenseValidatorCreateRequiresItemName(t *testing.T) {
Total: 10000,
Items: []contract.CreateExpenseItemRequest{
{
ChartOfAccountID: uuid.NewString(),
Amount: 10000,
ChartOfAccountID: uuid.NewString(),
PurchaseCategoryID: uuid.NewString(),
Amount: 10000,
},
},
}
@@ -45,9 +46,10 @@ func TestExpenseValidatorCreateDoesNotRequireHeaderExpenseName(t *testing.T) {
Total: 10000,
Items: []contract.CreateExpenseItemRequest{
{
ChartOfAccountID: uuid.NewString(),
Item: "Cleaning supplies",
Amount: 10000,
ChartOfAccountID: uuid.NewString(),
PurchaseCategoryID: uuid.NewString(),
Item: "Cleaning supplies",
Amount: 10000,
},
},
}
@@ -71,9 +73,10 @@ func TestExpenseValidatorCreateAllowsValidOptionalStatus(t *testing.T) {
Total: 10000,
Items: []contract.CreateExpenseItemRequest{
{
ChartOfAccountID: uuid.NewString(),
Item: "Cleaning supplies",
Amount: 10000,
ChartOfAccountID: uuid.NewString(),
PurchaseCategoryID: uuid.NewString(),
Item: "Cleaning supplies",
Amount: 10000,
},
},
}
@@ -97,9 +100,10 @@ func TestExpenseValidatorCreateRejectsInvalidStatus(t *testing.T) {
Total: 10000,
Items: []contract.CreateExpenseItemRequest{
{
ChartOfAccountID: uuid.NewString(),
Item: "Cleaning supplies",
Amount: 10000,
ChartOfAccountID: uuid.NewString(),
PurchaseCategoryID: uuid.NewString(),
Item: "Cleaning supplies",
Amount: 10000,
},
},
}
@@ -114,10 +118,11 @@ func TestExpenseValidatorCreateRejectsInvalidStatus(t *testing.T) {
func TestExpenseValidatorUpdateRejectsEmptyItemNameWhenProvided(t *testing.T) {
v := NewExpenseValidator()
empty := " "
purchaseCategoryID := uuid.NewString()
req := &contract.UpdateExpenseRequest{
Items: []contract.UpdateExpenseItemRequest{
{Item: &empty},
{PurchaseCategoryID: &purchaseCategoryID, Item: &empty},
},
}