Compare commits
2 Commits
1c26163065
...
c6155d1e63
| Author | SHA1 | Date | |
|---|---|---|---|
| c6155d1e63 | |||
| 06e46ba5ac |
@@ -140,13 +140,44 @@ namespace raven_integration
|
|||||||
long WorkOrderItemOutsideServiceToBeUpdatedId = a.ObjectResponse["data"]["id"].Value<long>();
|
long WorkOrderItemOutsideServiceToBeUpdatedId = a.ObjectResponse["data"]["id"].Value<long>();
|
||||||
|
|
||||||
|
|
||||||
|
////////////////////////////////////////
|
||||||
|
/// STATE
|
||||||
|
///
|
||||||
|
///
|
||||||
|
|
||||||
|
//set locking state "Closed", confirm frozen then unlock state for remainder
|
||||||
|
payload = $$"""
|
||||||
|
{"workOrderId":{{WorkOrderId}},"workOrderStatusId":9}
|
||||||
|
""";
|
||||||
|
a = await Util.PostAsync("workorder/states", await Util.GetTokenAsync("BizAdmin"), payload);
|
||||||
|
Util.ValidateDataReturnResponseOk(a);
|
||||||
|
|
||||||
|
|
||||||
|
//confirm update fails
|
||||||
|
a = await Util.GetAsync($"workorder/{WorkOrderId}", await Util.GetTokenAsync("BizAdmin"));
|
||||||
|
Util.ValidateDataReturnResponseOk(a);
|
||||||
|
var o = a.ObjectResponse["data"];
|
||||||
|
((JObject)o).Remove("items");
|
||||||
|
o["notes"] = "thisshouldfail";
|
||||||
|
a = await Util.PutAsync("workorder", await Util.GetTokenAsync("BizAdmin"), o.ToString());
|
||||||
|
Util.ValidateErrorCodeResponse(a,2200,400);
|
||||||
|
|
||||||
|
|
||||||
|
//unlocked status "Scheduled"
|
||||||
|
payload = $$"""
|
||||||
|
{"workOrderId":{{WorkOrderId}},"workOrderStatusId":3}
|
||||||
|
""";
|
||||||
|
a = await Util.PostAsync("workorder/states", await Util.GetTokenAsync("BizAdmin"), payload);
|
||||||
|
Util.ValidateDataReturnResponseOk(a);
|
||||||
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////////////
|
/////////////////////////////////////////////////////////////////////////
|
||||||
//UPDATES
|
//UPDATES
|
||||||
//
|
//
|
||||||
|
|
||||||
a = await Util.GetAsync($"workorder/items/labors/{WorkOrderItemLaborToBeUpdatedId}", await Util.GetTokenAsync("BizAdmin"));
|
a = await Util.GetAsync($"workorder/items/labors/{WorkOrderItemLaborToBeUpdatedId}", await Util.GetTokenAsync("BizAdmin"));
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
Util.ValidateDataReturnResponseOk(a);
|
||||||
var o = a.ObjectResponse["data"];
|
o = a.ObjectResponse["data"];
|
||||||
o["serviceDetails"] = "UpdatedLaborNotes";
|
o["serviceDetails"] = "UpdatedLaborNotes";
|
||||||
a = await Util.PutAsync("workorder/items/labors", await Util.GetTokenAsync("BizAdmin"), o.ToString());
|
a = await Util.PutAsync("workorder/items/labors", await Util.GetTokenAsync("BizAdmin"), o.ToString());
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
Util.ValidateDataReturnResponseOk(a);
|
||||||
@@ -295,107 +326,8 @@ namespace raven_integration
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
[Fact]
|
|
||||||
public async Task ConfirmDeleteTransactionWorksAtServer()
|
|
||||||
{
|
|
||||||
ApiResponse a = await Util.GetAsync("build-mode", await Util.GetTokenAsync("BizAdmin"));
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
var BuildMode = (string)a.ObjectResponse["data"]["buildMode"];
|
|
||||||
|
|
||||||
if (BuildMode == "DEBUG")//The key phrase that triggers exception during delete only exists in debug builds of server
|
|
||||||
{
|
|
||||||
|
|
||||||
dynamic d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.notes = "WOHEADER";
|
|
||||||
d.wiki = "INTEGRATION_DELETE_TEST_FAIL_BEFORE_COMMIT";//<-- key phrase triggers server exception in Workorder immediately before it would normally commit the whole thing
|
|
||||||
|
|
||||||
a = await Util.PostAsync("workorder", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
long WorkOrderId = a.ObjectResponse["data"]["id"].Value<long>();
|
|
||||||
|
|
||||||
//CREATE WOITEM 1
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderId = WorkOrderId;
|
|
||||||
a = await Util.PostAsync("workorder/items", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
long WorkOrderItem1Id = a.ObjectResponse["data"]["id"].Value<long>();
|
|
||||||
|
|
||||||
//CREATE WOITEMPART
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderItemId = WorkOrderItem1Id;
|
|
||||||
a = await Util.PostAsync("workorder/items/parts", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
//CREATE TWO WOITEMLABORS
|
|
||||||
//ONE
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderItemId = WorkOrderItem1Id;
|
|
||||||
a = await Util.PostAsync("workorder/items/labors", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
//TWO
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderItemId = WorkOrderItem1Id;
|
|
||||||
a = await Util.PostAsync("workorder/items/labors", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
//CREATE WOITEM-2
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderId = WorkOrderId;
|
|
||||||
a = await Util.PostAsync("workorder/items", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
long WorkOrderItem2Id = (long)a.ObjectResponse["data"]["id"];
|
|
||||||
|
|
||||||
//CREATE WOITEMPART-2
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderItemId = WorkOrderItem2Id;
|
|
||||||
a = await Util.PostAsync("workorder/items/parts", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
//CREATE WOITEMLABOR(S)-2
|
|
||||||
//ONE-2
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderItemId = WorkOrderItem2Id;
|
|
||||||
a = await Util.PostAsync("workorder/items/labors", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
//TWO-2
|
|
||||||
d = new JObject();
|
|
||||||
d.active = true;
|
|
||||||
d.workOrderItemId = WorkOrderItem2Id;
|
|
||||||
a = await Util.PostAsync("workorder/items/labors", await Util.GetTokenAsync("BizAdmin"), d.ToString());
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
a = await Util.DeleteAsync("workorder/" + WorkOrderId.ToString(), await Util.GetTokenAsync("BizAdmin"));
|
|
||||||
Util.ValidateErrorCodeResponse(a, 2200, 400);
|
|
||||||
|
|
||||||
//now confirm the workorder is still there and with it's children intact
|
|
||||||
//RETRIEVE WORKORDER AND VALIDATE ENTIRE
|
|
||||||
a = await Util.GetAsync("workorder/" + WorkOrderId.ToString(), await Util.GetTokenAsync("BizAdmin"));
|
|
||||||
Util.ValidateDataReturnResponseOk(a);
|
|
||||||
|
|
||||||
var w = a.ObjectResponse["data"];
|
|
||||||
w["items"].Count().Should().Be(2);
|
|
||||||
|
|
||||||
var woitem1 = w["items"].FirstOrDefault(z => (long)z["id"] == WorkOrderItem1Id);
|
|
||||||
woitem1["labors"].Count().Should().Be(2);
|
|
||||||
woitem1["parts"].Count().Should().Be(1);
|
|
||||||
|
|
||||||
var woitem2 = w["items"].FirstOrDefault(z => (long)z["id"] == WorkOrderItem2Id);
|
|
||||||
woitem2["labors"].Count().Should().Be(2);
|
|
||||||
woitem2["parts"].Count().Should().Be(1);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user