4648
This commit is contained in:
@@ -33,13 +33,13 @@ namespace raven_integration
|
||||
d.Template = dTemplateArray.ToString(Newtonsoft.Json.Formatting.None);
|
||||
|
||||
//replace the User template at the server
|
||||
ApiResponse a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdminFull"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
ApiResponse a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdmin"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
|
||||
|
||||
//RETRIEVE
|
||||
//Get one
|
||||
a = await Util.GetAsync("pick-list/template/3/", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/template/3/", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
//assert contains ONE record ONLY and it's the one we set
|
||||
var templateArray = JArray.Parse(a.ObjectResponse["data"]["template"].Value<string>());
|
||||
@@ -85,7 +85,7 @@ namespace raven_integration
|
||||
|
||||
|
||||
//GET PICKLIST FOR unique phrase query sb only employee number due to custom template
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=3&query=" + UniquePhrase, await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=3&query=" + UniquePhrase, await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
var pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
pickList.Count.Should().Be(1);
|
||||
@@ -101,11 +101,11 @@ namespace raven_integration
|
||||
d.Template = dTemplateArray.ToString(Newtonsoft.Json.Formatting.None);
|
||||
|
||||
//replace the User template at the server
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdminFull"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdmin"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
|
||||
//GET PICKLIST FOR unique phrase query sb only user name field due to custom template
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=3&query=" + UniquePhrase, await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=3&query=" + UniquePhrase, await Util.GetTokenAsync("BizAdmin"));
|
||||
//"select auser.id as plId, auser.active as plActive, concat_ws(' ', auser.name) as plname from auser where auser.active = true and ((auser.name like '%pick1584556347748%')) order by auser.name limit 100"
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
@@ -121,12 +121,12 @@ namespace raven_integration
|
||||
|
||||
|
||||
// RESET TEMPLATE TO DEFAULT
|
||||
a = await Util.DeleteAsync("pick-list/template/3/", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.DeleteAsync("pick-list/template/3/", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
|
||||
//RETRIEVE (Confirm it's back to default)
|
||||
//Get one
|
||||
a = await Util.GetAsync("pick-list/template/3/", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/template/3/", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
//assert contains default template record ONLY and it's the one we set
|
||||
templateArray = JArray.Parse(a.ObjectResponse["data"]["template"].Value<string>());
|
||||
@@ -144,7 +144,7 @@ namespace raven_integration
|
||||
df.fld = "DOES_NOT_EXIST";//<-- ERROR BAD FIELD NAME
|
||||
dTemplateArray.Add(df);
|
||||
d.Template = dTemplateArray.ToString(Newtonsoft.Json.Formatting.None);
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdminFull"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdmin"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
//"{\"error\":{\"code\":\"2200\",\"details\":[{\"message\":\"Template array item 0, fld property value \\\"DOES_NOT_EXIST\\\" is not a valid value for AyaType specified\",\"target\":\"Template\",\"error\":\"2203\"}],\"message\":\"Object did not pass validation\"}}"
|
||||
Util.ValidateErrorCodeResponse(a, 2200, 400);
|
||||
Util.ShouldContainValidationError(a, "Template", "2203");
|
||||
@@ -159,13 +159,13 @@ namespace raven_integration
|
||||
dTemplateArray.Add(df);
|
||||
d.Template = dTemplateArray.ToString(Newtonsoft.Json.Formatting.None);
|
||||
//replace the User template at the server
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdminFull"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdmin"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
//"{\"error\":{\"code\":\"2200\",\"details\":[{\"message\":\"Template array item 0, fld property value \\\"DOES_NOT_EXIST\\\" is not a valid value for AyaType specified\",\"target\":\"Template\",\"error\":\"2203\"}],\"message\":\"Object did not pass validation\"}}"
|
||||
Util.ValidateErrorCodeResponse(a, 2200, 400);
|
||||
Util.ShouldContainValidationError(a, "ayaType", "2203");
|
||||
|
||||
//RIGHTS ISSUE,
|
||||
//currently only bizadminfull can change a picklist template
|
||||
//currently only BizAdmin can change a picklist template
|
||||
d = new JObject();
|
||||
d.Id = 3;//User
|
||||
//template, simple test, nothing fancy
|
||||
@@ -175,7 +175,7 @@ namespace raven_integration
|
||||
dTemplateArray.Add(df);
|
||||
d.Template = dTemplateArray.ToString(Newtonsoft.Json.Formatting.None);
|
||||
//ERROR NO RIGHTS USER
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("CustomerLimited"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("CustomerRestricted"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
//"{\"error\":{\"code\":\"2004\",\"message\":\"User not authorized for this resource operation (insufficient rights)\"}}"
|
||||
Util.ValidateErrorCodeResponse(a, 2004, 403);
|
||||
|
||||
@@ -183,7 +183,7 @@ namespace raven_integration
|
||||
d = new JObject();
|
||||
d.Id = 3;//User
|
||||
d.Template = "";//<-- ERROR no template
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdminFull"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdmin"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
Util.ValidateErrorCodeResponse(a, 2200, 400);
|
||||
Util.ShouldContainValidationError(a, "Template", "2201");
|
||||
|
||||
@@ -197,7 +197,7 @@ namespace raven_integration
|
||||
dTemplateArray.Add(df);
|
||||
string sTemplate = dTemplateArray.ToString(Newtonsoft.Json.Formatting.None);
|
||||
d.Template = sTemplate.Substring(2);//<-- ERROR missing first two characters of json template array
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdminFull"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
a = await Util.PostAsync("pick-list/template", await Util.GetTokenAsync("BizAdmin"), d.ToString(Newtonsoft.Json.Formatting.None));
|
||||
//"{\"error\":{\"code\":\"2200\",\"details\":[{\"message\":\"Template is not valid JSON string: Error reading JArray from JsonReader. Current JsonReader item is not an array: String. Path '', line 1, position 5.\",\"target\":\"Template\",\"error\":\"2203\"}],\"message\":\"Object did not pass validation\"}}"
|
||||
Util.ValidateErrorCodeResponse(a, 2200, 400);
|
||||
Util.ShouldContainValidationError(a, "Template", "2203");
|
||||
@@ -211,7 +211,7 @@ namespace raven_integration
|
||||
public async Task PickListTemplateList()
|
||||
{
|
||||
//RETRIEVE
|
||||
ApiResponse a = await Util.GetAsync("pick-list/template/list", await Util.GetTokenAsync("BizAdminFull"));
|
||||
ApiResponse a = await Util.GetAsync("pick-list/template/list", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
//assert contains at least two records (as we only have two at time of writing this test)
|
||||
var templateList = ((JArray)a.ObjectResponse["data"]);
|
||||
@@ -221,18 +221,18 @@ namespace raven_integration
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// test get picklist fields list for widget template
|
||||
/// test get picklist fields list for User template
|
||||
/// </summary>
|
||||
[Fact]
|
||||
public async Task WidgetPickListTemplateFieldList()
|
||||
public async Task UserPickListTemplateFieldList()
|
||||
{
|
||||
//RETRIEVE WIDGET PICKLIST FIELDS
|
||||
ApiResponse a = await Util.GetAsync("pick-list/template/ListFields/2", await Util.GetTokenAsync("BizAdminFull"));
|
||||
//RETRIEVE USER PICKLIST FIELDS
|
||||
ApiResponse a = await Util.GetAsync("pick-list/template/ListFields/3", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
//assert contains at least two records (as we only have two at time of writing this test)
|
||||
var templateList = ((JArray)a.ObjectResponse["data"]);
|
||||
templateList.Count.Should().BeGreaterThan(4);
|
||||
templateList[0]["fieldKey"].Value<string>().Should().Be("widgetactive");//first one should be a widgetactive field
|
||||
templateList.Count.Should().BeGreaterThan(3);
|
||||
templateList[0]["fieldKey"].Value<string>().Should().Be("useractive");//first one should be a useractive field
|
||||
}
|
||||
|
||||
|
||||
@@ -243,7 +243,7 @@ namespace raven_integration
|
||||
public async Task FetchWidgetPickListNoQuery()
|
||||
{
|
||||
//RETRIEVE WIDGET PICKLIST no filter
|
||||
ApiResponse a = await Util.GetAsync("pick-list/list?ayaType=2", await Util.GetTokenAsync("BizAdminFull"));
|
||||
ApiResponse a = await Util.GetAsync("pick-list/list?ayaType=2", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
//assert contains 100 records (current picklist maximum count)
|
||||
var pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
@@ -258,7 +258,7 @@ namespace raven_integration
|
||||
public async Task FetchWidgetPickListPreDefined()
|
||||
{
|
||||
//fetch the SuperUser account which always exists
|
||||
ApiResponse a = await Util.GetAsync("pick-list/list?ayaType=3&preId=1", await Util.GetTokenAsync("BizAdminFull"));
|
||||
ApiResponse a = await Util.GetAsync("pick-list/list?ayaType=3&preId=1", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
//assert contains 1 record
|
||||
var pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
@@ -295,7 +295,7 @@ namespace raven_integration
|
||||
|
||||
|
||||
//RETRIEVE WIDGET PICKLIST with name filter
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=a1b2c3", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=a1b2c3", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
|
||||
var pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
@@ -303,7 +303,7 @@ namespace raven_integration
|
||||
pickList[0]["name"].Value<string>().Should().Contain("_a1b2c3");
|
||||
|
||||
//DELETE WIDGETS
|
||||
a = await Util.DeleteAsync("widget/" + IncludedWidgetId.ToString(), await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.DeleteAsync("widget/" + IncludedWidgetId.ToString(), await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
}
|
||||
|
||||
@@ -339,7 +339,7 @@ namespace raven_integration
|
||||
|
||||
|
||||
//RETRIEVE WIDGET PICKLIST with name filter
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=..lblu", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=..lblu", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
|
||||
var pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
@@ -347,7 +347,7 @@ namespace raven_integration
|
||||
pickList[0]["id"].Value<long>().Should().Be(IncludedWidgetId);
|
||||
|
||||
//DELETE WIDGETS
|
||||
a = await Util.DeleteAsync("widget/" + IncludedWidgetId.ToString(), await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.DeleteAsync("widget/" + IncludedWidgetId.ToString(), await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
}
|
||||
|
||||
@@ -406,7 +406,7 @@ namespace raven_integration
|
||||
|
||||
|
||||
//CONFIRM BOTH INACTIVE AND ACTIVE
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=ickListInactiveAct&inactive=true", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=ickListInactiveAct&inactive=true", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
var pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
//assert contains at least two records
|
||||
@@ -425,7 +425,7 @@ namespace raven_integration
|
||||
|
||||
|
||||
//CONFIRM ACTIVE ONLY
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=ickListInactiveAct", await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.GetAsync("pick-list/list?ayaType=2&query=ickListInactiveAct", await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateDataReturnResponseOk(a);
|
||||
pickList = ((JArray)a.ObjectResponse["data"]);
|
||||
//assert contains at least two records
|
||||
@@ -445,13 +445,13 @@ namespace raven_integration
|
||||
//DELETE WIDGETS
|
||||
foreach (long l in ActiveWidgetIdList)
|
||||
{
|
||||
a = await Util.DeleteAsync("widget/" + l.ToString(), await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.DeleteAsync("widget/" + l.ToString(), await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
}
|
||||
|
||||
foreach (long l in NotActiveWidgetIdList)
|
||||
{
|
||||
a = await Util.DeleteAsync("widget/" + l.ToString(), await Util.GetTokenAsync("BizAdminFull"));
|
||||
a = await Util.DeleteAsync("widget/" + l.ToString(), await Util.GetTokenAsync("BizAdmin"));
|
||||
Util.ValidateHTTPStatusCode(a, 204);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user