Moving *rateSCost and *accountSCost in APIOpts

This commit is contained in:
andronache98
2022-02-14 14:56:28 +02:00
committed by Dan Christian Bogos
parent dcdd696932
commit c79d0cb4bd
5 changed files with 58 additions and 54 deletions

View File

@@ -126,7 +126,7 @@ func (cdrS *CDRServer) rateSCostForEvent(ctx *context.Context, cgrEv *utils.CGRE
cgrEv, &rpCost); err != nil {
return
}
cgrEv.Event[utils.MetaRateSCost] = rpCost
cgrEv.APIOpts[utils.MetaRateSCost] = rpCost
return
}
@@ -137,7 +137,7 @@ func (cdrS *CDRServer) accountSDebitEvent(ctx *context.Context, cgrEv *utils.CGR
utils.AccountSv1DebitAbstracts, cgrEv, acntCost); err != nil {
return
}
cgrEv.Event[utils.MetaAccountSCost] = acntCost
cgrEv.APIOpts[utils.MetaAccountSCost] = acntCost
return
}
@@ -258,7 +258,7 @@ func (cdrS *CDRServer) processEvent(ctx *context.Context, ev *utils.CGREvent) (e
return
}
if acntS {
if ecCostIface, wasCharged := cgrEv.Event[utils.MetaAccountSCost]; wasCharged {
if ecCostIface, wasCharged := cgrEv.APIOpts[utils.MetaAccountSCost]; wasCharged {
// before converting into EventChargers, we must get the JSON encoding and Unmarshal it into an EventChargers
var btsEvCh []byte
btsEvCh, err = json.Marshal(ecCostIface.(map[string]interface{}))

View File

@@ -711,17 +711,18 @@ func TestCDRsRateProcessEventMock(t *testing.T) {
Tenant: "cgrates.org",
ID: "testID",
Event: map[string]interface{}{
utils.MetaRateSCost: utils.RateProfileCost{},
"Resources": "ResourceProfile1",
utils.AnswerTime: time.Date(2014, 7, 14, 14, 30, 0, 0, time.UTC),
"UsageInterval": "1s",
"PddInterval": "1s",
utils.Weight: "20.0",
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
"Resources": "ResourceProfile1",
utils.AnswerTime: time.Date(2014, 7, 14, 14, 30, 0, 0, time.UTC),
"UsageInterval": "1s",
"PddInterval": "1s",
utils.Weight: "20.0",
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
},
APIOpts: map[string]interface{}{
utils.Subsys: utils.MetaRateS,
utils.MetaRateSCost: utils.RateProfileCost{},
utils.Subsys: utils.MetaRateS,
},
}
if !reflect.DeepEqual(expected, cgrEv) {
@@ -768,17 +769,18 @@ func TestCDRsAccountProcessEventMock(t *testing.T) {
Tenant: "cgrates.org",
ID: "testID",
Event: map[string]interface{}{
utils.MetaAccountSCost: &utils.EventCharges{},
"Resources": "ResourceProfile1",
utils.AnswerTime: time.Date(2014, 7, 14, 14, 30, 0, 0, time.UTC),
"UsageInterval": "1s",
"PddInterval": "1s",
utils.Weight: "20.0",
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
"Resources": "ResourceProfile1",
utils.AnswerTime: time.Date(2014, 7, 14, 14, 30, 0, 0, time.UTC),
"UsageInterval": "1s",
"PddInterval": "1s",
utils.Weight: "20.0",
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
},
APIOpts: map[string]interface{}{
utils.Subsys: utils.MetaAccounts,
utils.MetaAccountSCost: &utils.EventCharges{},
utils.Subsys: utils.MetaAccounts,
},
}
err := newCDRSrv.accountSDebitEvent(context.Background(), cgrEv)
@@ -789,17 +791,18 @@ func TestCDRsAccountProcessEventMock(t *testing.T) {
Tenant: "cgrates.org",
ID: "testID",
Event: map[string]interface{}{
utils.MetaAccountSCost: cgrEv.Event[utils.MetaAccountSCost],
"Resources": "ResourceProfile1",
utils.AnswerTime: time.Date(2014, 7, 14, 14, 30, 0, 0, time.UTC),
"UsageInterval": "1s",
"PddInterval": "1s",
utils.Weight: "20.0",
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
"Resources": "ResourceProfile1",
utils.AnswerTime: time.Date(2014, 7, 14, 14, 30, 0, 0, time.UTC),
"UsageInterval": "1s",
"PddInterval": "1s",
utils.Weight: "20.0",
utils.Usage: 135 * time.Second,
utils.Cost: 123.0,
},
APIOpts: map[string]interface{}{
utils.Subsys: utils.MetaAccounts,
utils.MetaAccountSCost: cgrEv.APIOpts[utils.MetaAccountSCost],
utils.Subsys: utils.MetaAccounts,
},
}
if !reflect.DeepEqual(expected, cgrEv) {