This commit is contained in:
2018-09-07 16:34:05 +00:00
parent 17e07b3c6c
commit 5e336762f6
6 changed files with 118 additions and 15 deletions

View File

@@ -257,6 +257,111 @@ namespace raven_integration
/// <summary>
/// Test tagging a bunch of items then mass untag
/// </summary>
[Fact]
public async void UnTagEverythingWorks()
{
/*
{
"name": "TestTag"
}
*/
//CREATE TAG
dynamic D = new JObject();
D.name = Util.Uniquify("test-tag-4-untag");
ApiResponse R = await Util.PostAsync("Tag", await Util.GetTokenAsync("BizAdminFull"), D.ToString());
Util.ValidateDataReturnResponseOk(R);
long TestTagId = R.ObjectResponse["result"]["id"].Value<long>();
//CREATE WIDGET 1
dynamic D2 = new JObject();
D2.name = Util.Uniquify("WIDGET_UNTAG_TEST1");
D2.created = DateTime.Now.ToString();
D2.dollarAmount = 1.11m;
D2.active = true;
D2.roles = 0;
R = await Util.PostAsync("Widget", await Util.GetTokenAsync("BizAdminFull"), D2.ToString());
Util.ValidateDataReturnResponseOk(R);
long Widget1Id = R.ObjectResponse["result"]["id"].Value<long>();
//CREATE WIDGET 2
//D2 = new JObject();
D2.name = Util.Uniquify("WIDGET_UNTAG_TEST2");
D2.created = DateTime.Now.ToString();
D2.dollarAmount = 1.11m;
D2.active = true;
D2.roles = 0;
R = await Util.PostAsync("Widget", await Util.GetTokenAsync("BizAdminFull"), D2.ToString());
Util.ValidateDataReturnResponseOk(R);
long Widget2Id = R.ObjectResponse["result"]["id"].Value<long>();
//TAGMAP to Widget 1
/*
{
"tagId": 0,
"tagToObjectId": 0,
"tagToObjectType": 0
}
*/
dynamic D3 = new JObject();
D3.tagId = TestTagId;
D3.tagToObjectId = Widget1Id;
D3.tagToObjectType = 2;//widget
R = await Util.PostAsync("TagMap", await Util.GetTokenAsync("BizAdminFull"), D3.ToString());
Util.ValidateDataReturnResponseOk(R);
long TagMap1Id = R.ObjectResponse["result"]["id"].Value<long>();
//VERIFY TAGMAP
R = await Util.GetAsync("TagMap/" + TagMap1Id.ToString(), await Util.GetTokenAsync("BizAdminFull"));
Util.ValidateDataReturnResponseOk(R);
R.ObjectResponse["result"]["id"].Value<long>().Should().Be(TagMap1Id);
R.ObjectResponse["result"]["tagToObjectId"].Value<long>().Should().Be(Widget1Id);
//TAGMAP to Widget 2
D3.tagId = TestTagId;
D3.tagToObjectId = Widget2Id;
D3.tagToObjectType = 2;//widget
R = await Util.PostAsync("TagMap", await Util.GetTokenAsync("BizAdminFull"), D3.ToString());
Util.ValidateDataReturnResponseOk(R);
long TagMap2Id = R.ObjectResponse["result"]["id"].Value<long>();
//VERIFY TAGMAP
R = await Util.GetAsync("TagMap/" + TagMap2Id.ToString(), await Util.GetTokenAsync("BizAdminFull"));
Util.ValidateDataReturnResponseOk(R);
R.ObjectResponse["result"]["id"].Value<long>().Should().Be(TagMap2Id);
R.ObjectResponse["result"]["tagToObjectId"].Value<long>().Should().Be(Widget2Id);
//UNTAG-ALL
R = await Util.PostAsync("Tag/UntagAll/" + TestTagId.ToString(), await Util.GetTokenAsync("BizAdminFull"));
Util.ValidateHTTPStatusCode(R, 204);
//DELETE TAG
//This should now work because untag all freed it up
R = await Util.DeleteAsync("Tag/" + TestTagId.ToString(), await Util.GetTokenAsync("BizAdminFull"));
Util.ValidateHTTPStatusCode(R, 204);
//DELETE WIDGETS
R = await Util.DeleteAsync("Widget/" + Widget1Id.ToString(), await Util.GetTokenAsync("BizAdminFull"));
Util.ValidateHTTPStatusCode(R, 204);
R = await Util.DeleteAsync("Widget/" + Widget2Id.ToString(), await Util.GetTokenAsync("BizAdminFull"));
Util.ValidateHTTPStatusCode(R, 204);
}