mirror of
https://github.com/cgrates/cgrates.git
synced 2026-02-20 06:38:45 +05:00
Add more test for AliasProfiles
This commit is contained in:
committed by
Dan Christian Bogos
parent
7e6feecc63
commit
dbf77721b2
@@ -70,6 +70,7 @@ var sTestsOnStorIT = []func(t *testing.T){
|
||||
testOnStorITCacheTiming,
|
||||
testOnStorITCacheFilter,
|
||||
testOnStorITCacheSupplierProfile,
|
||||
testOnStorITCacheAliasProfile,
|
||||
// ToDo: test cache flush for a prefix
|
||||
// ToDo: testOnStorITLoadAccountingCache
|
||||
testOnStorITHasData,
|
||||
@@ -102,6 +103,7 @@ var sTestsOnStorIT = []func(t *testing.T){
|
||||
testOnStorITCRUDThreshold,
|
||||
testOnStorITCRUDFilter,
|
||||
testOnStorITCRUDSupplierProfile,
|
||||
testOnStorITCRUDAliasProfile,
|
||||
}
|
||||
|
||||
func TestOnStorITRedisConnect(t *testing.T) {
|
||||
@@ -1145,6 +1147,43 @@ func testOnStorITCacheSupplierProfile(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func testOnStorITCacheAliasProfile(t *testing.T) {
|
||||
mapAliases := make(map[string]map[string]string)
|
||||
mapAliases["FN1"] = make(map[string]string)
|
||||
mapAliases["FN1"]["Init1"] = "Al1"
|
||||
alsProfile := &AliasProfile{
|
||||
Tenant: "cgrates.org",
|
||||
ID: "ALS1",
|
||||
FilterIDs: []string{"FLTR_ACNT_dan", "FLTR_DST_DE"},
|
||||
ActivationInterval: &utils.ActivationInterval{
|
||||
ActivationTime: time.Date(2014, 7, 14, 14, 25, 0, 0, time.UTC).Local(),
|
||||
},
|
||||
Aliases: mapAliases,
|
||||
Weight: 20,
|
||||
}
|
||||
if err := onStor.SetAliasProfile(alsProfile); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
expectedT := []string{"alp_cgrates.org:ALS1"}
|
||||
if itm, err := onStor.DataDB().GetKeysForPrefix(utils.AliasProfilePrefix); err != nil {
|
||||
t.Error(err)
|
||||
} else if !reflect.DeepEqual(expectedT, itm) {
|
||||
t.Errorf("Expected : %+v, but received %+v", expectedT, itm)
|
||||
}
|
||||
|
||||
if _, hasIt := cache.Get(utils.AliasProfilePrefix + alsProfile.TenantID()); hasIt {
|
||||
t.Error("Already in cache")
|
||||
}
|
||||
if err := onStor.CacheDataFromDB(utils.AliasProfilePrefix, []string{alsProfile.TenantID()}, false); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
if itm, hasIt := cache.Get(utils.AliasProfilePrefix + alsProfile.TenantID()); !hasIt {
|
||||
t.Error("Did not cache")
|
||||
} else if rcv := itm.(*AliasProfile); !reflect.DeepEqual(alsProfile, rcv) {
|
||||
t.Errorf("Expecting: %+v, received: %+v", alsProfile, rcv)
|
||||
}
|
||||
}
|
||||
|
||||
func testOnStorITHasData(t *testing.T) {
|
||||
rp := &RatingPlan{
|
||||
Id: "HasData",
|
||||
@@ -2446,3 +2485,41 @@ func testOnStorITCRUDSupplierProfile(t *testing.T) {
|
||||
t.Error(rcvErr)
|
||||
}
|
||||
}
|
||||
|
||||
func testOnStorITCRUDAliasProfile(t *testing.T) {
|
||||
mapAliases := make(map[string]map[string]string)
|
||||
mapAliases["FN1"] = make(map[string]string)
|
||||
mapAliases["FN1"]["Init1"] = "Al1"
|
||||
alsProfile := &AliasProfile{
|
||||
Tenant: "cgrates.org",
|
||||
ID: "ALS1",
|
||||
FilterIDs: []string{"FLTR_ACNT_dan", "FLTR_DST_DE"},
|
||||
ActivationInterval: &utils.ActivationInterval{
|
||||
ActivationTime: time.Date(2014, 7, 14, 14, 25, 0, 0, time.UTC).Local(),
|
||||
},
|
||||
Aliases: mapAliases,
|
||||
Weight: 20,
|
||||
}
|
||||
if _, rcvErr := onStor.GetAliasProfile("cgrates.org", "ALS1", true, utils.NonTransactional); rcvErr != nil && rcvErr != utils.ErrNotFound {
|
||||
t.Error(rcvErr)
|
||||
}
|
||||
if err := onStor.SetAliasProfile(alsProfile); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
if rcv, err := onStor.GetAliasProfile("cgrates.org", "ALS1", true, utils.NonTransactional); err != nil {
|
||||
t.Error(err)
|
||||
} else if !(reflect.DeepEqual(alsProfile, rcv)) {
|
||||
t.Errorf("Expecting: %v, received: %v", alsProfile, rcv)
|
||||
}
|
||||
if rcv, err := onStor.GetAliasProfile("cgrates.org", "ALS1", false, utils.NonTransactional); err != nil {
|
||||
t.Error(err)
|
||||
} else if !reflect.DeepEqual(alsProfile, rcv) {
|
||||
t.Errorf("Expecting: %v, received: %v", alsProfile, rcv)
|
||||
}
|
||||
if err := onStor.RemoveAliasProfile(alsProfile.Tenant, alsProfile.ID, utils.NonTransactional); err != nil {
|
||||
t.Error(err)
|
||||
}
|
||||
if _, rcvErr := onStor.GetAliasProfile("cgrates.org", "ALS1", true, utils.NonTransactional); rcvErr != nil && rcvErr != utils.ErrNotFound {
|
||||
t.Error(rcvErr)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user