From a01afde795b42d2af0cd96088f840e5a39940515 Mon Sep 17 00:00:00 2001 From: porosnicuadrian Date: Fri, 8 Jan 2021 17:12:40 +0200 Subject: [PATCH] Added an integration test for ActionTriggers in apier --- apier/v1/apier_it_test.go | 49 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/apier/v1/apier_it_test.go b/apier/v1/apier_it_test.go index 3eadae307..e1781590d 100644 --- a/apier/v1/apier_it_test.go +++ b/apier/v1/apier_it_test.go @@ -93,6 +93,7 @@ var ( testAPIerSv1GetRatingProfileWithoutTenant, testAPIerSv1GetRatingProfileIDsWithoutTenant, testApierReloadCache, + testApierGetActionTrigger, testApierGetDestination, testApierGetRatingPlan, testApierRemoveRatingPlan, @@ -1013,6 +1014,54 @@ func testAPIerSv1GetRatingProfileWithoutTenant(t *testing.T) { } } +func testApierGetActionTrigger(t *testing.T) { + //nothing to get from database + var atrs *engine.ActionTriggers + if err := rater.Call(utils.APIerSv1GetActionTriggers, + &AttrGetActionTriggers{GroupIDs: []string{"TEST_ID1"}}, &atrs); err.Error() != utils.ErrNotFound.Error() { + t.Error(err) + } + + //set an ActionTrigger in database + var reply string + if err := rater.Call(utils.APIerSv1SetActionTrigger, + AttrSetActionTrigger{ + GroupID: "TEST_ID1", + UniqueID: "TEST_ID2", + }, &reply); err != nil { + t.Error(err) + } + + //get from database and compare + newActTrg := &engine.ActionTriggers{ + { + ID: "TEST_ID1", + UniqueID: "TEST_ID2", + Balance: &engine.BalanceFilter{}, + }, + } + if err := rater.Call(utils.APIerSv1GetActionTriggers, + &AttrGetActionTriggers{GroupIDs: []string{"TEST_ID1"}}, &atrs); err != nil { + t.Error(err) + } else if !reflect.DeepEqual(newActTrg, atrs) { + t.Errorf("Expected %+v \n, received %+v", utils.ToJSON(newActTrg), utils.ToJSON(atrs)) + } + + //remove the ActionTrigger from dataBase + if err := rater.Call(utils.APIerSv1RemoveActionTrigger, + &AttrRemoveActionTrigger{GroupID: "TEST_ID1"}, &reply); err != nil { + t.Error(err) + } else if reply != utils.OK { + t.Errorf("Unexpected result") + } + + //nothing to get from dataBase + if err := rater.Call(utils.APIerSv1GetActionTriggers, + &AttrGetActionTriggers{GroupIDs: []string{"TEST_ID1"}}, &atrs); err.Error() != utils.ErrNotFound.Error() { + t.Error(err) + } +} + // Test here ReloadCache func testApierReloadCache(t *testing.T) { var reply string