From 69f5921a8dc6176dde5217af78c4a2eadea7c89d Mon Sep 17 00:00:00 2001 From: DanB Date: Sun, 27 Apr 2014 14:51:05 +0200 Subject: [PATCH] Fix MediatorLocal test considering derived charging --- .../prepaid1centpsec/DerivedChargers.csv | 6 +-- mediator/mediator_local_test.go | 42 +++---------------- 2 files changed, 8 insertions(+), 40 deletions(-) diff --git a/data/tariffplans/prepaid1centpsec/DerivedChargers.csv b/data/tariffplans/prepaid1centpsec/DerivedChargers.csv index ede973623..8439bdde8 100644 --- a/data/tariffplans/prepaid1centpsec/DerivedChargers.csv +++ b/data/tariffplans/prepaid1centpsec/DerivedChargers.csv @@ -1,4 +1,4 @@ #Tenant,Tor,Direction,Account,Subject,RunId,ReqTypeField,DirectionField,TenantField,TorField,AccountField,SubjectField,DestinationField,SetupTimeField,AnswerTimeField,DurationField -cgrates.org,call,*out,dan,dan,extra1,^prepaid,,,,rif,rif,,,,cgr_duration -cgrates.org,call,*out,dan,dan,extra2,,,,,ivo,ivo,,,, -cgrates.org,call,*out,dan,*any,extra1,,,,,rif2,rif2,,,, +cgrates.org,call,*out,dan,dan,extra1,^prepaid,,,,^rif,^rif,,,,^1s +cgrates.org,call,*out,dan,dan,extra2,,,,,^ivo,^ivo,,,, +cgrates.org,call,*out,dan,*any,extra1,,,,,^rif2,^rif2,,,, diff --git a/mediator/mediator_local_test.go b/mediator/mediator_local_test.go index d7fcfc594..5029190ed 100644 --- a/mediator/mediator_local_test.go +++ b/mediator/mediator_local_test.go @@ -149,10 +149,10 @@ func TestPostCdrs(t *testing.T) { t.Error(err.Error()) } } - time.Sleep(10 * time.Millisecond) // Give time for CDRs to reach database + time.Sleep(100 * time.Millisecond) // Give time for CDRs to reach database if storedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, false, false); err != nil { t.Error(err) - } else if len(storedCdrs) != 2 { // Make sure CDRs made it into StorDb + } else if len(storedCdrs) != 4 { // Make sure CDRs made it into StorDb t.Error(fmt.Sprintf("Unexpected number of CDRs stored: %d", len(storedCdrs))) } if nonErrorCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, true, false); err != nil { @@ -180,7 +180,7 @@ func TestInjectCdrs(t *testing.T) { } if storedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, false, false); err != nil { t.Error(err) - } else if len(storedCdrs) != 4 { // Make sure CDRs made it into StorDb + } else if len(storedCdrs) != 6 { // Make sure CDRs made it into StorDb t.Error(fmt.Sprintf("Unexpected number of CDRs stored: %d", len(storedCdrs))) } if nonRatedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, true, true); err != nil { @@ -222,7 +222,7 @@ func TestRateCdrs(t *testing.T) { } if errRatedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, false, true); err != nil { t.Error(err) - } else if len(errRatedCdrs) != 2 { // The first 2 with errors should be still there before rerating + } else if len(errRatedCdrs) != 4 { // The first 2 with errors should be still there before rerating t.Error(fmt.Sprintf("Unexpected number of CDRs with errors: %d", len(errRatedCdrs))) } if err := cgrRpc.Call("MediatorV1.RateCdrs", utils.AttrRateCdrs{RerateErrors: true}, &reply); err != nil { @@ -232,39 +232,7 @@ func TestRateCdrs(t *testing.T) { } if errRatedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, false, true); err != nil { t.Error(err) - } else if len(errRatedCdrs) != 1 { // One CDR with errors should be fixed now by rerating - t.Error(fmt.Sprintf("Unexpected number of CDRs with errors: %d", len(errRatedCdrs))) - } -} - -func TestDerivedCharging(t *testing.T) { - if !*testLocal { - return - } - var reply string - if err := cgrRpc.Call("MediatorV1.RateCdrs", utils.AttrRateCdrs{}, &reply); err != nil { - t.Error(err.Error()) - } else if reply != utils.OK { - t.Errorf("Unexpected reply: %s", reply) - } - if nonRatedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, true, true); err != nil { - t.Error(err) - } else if len(nonRatedCdrs) != 0 { // Just two of them should be non-rated - t.Error(fmt.Sprintf("Unexpected number of CDRs non-rated: %d", len(nonRatedCdrs))) - } - if errRatedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, false, true); err != nil { - t.Error(err) - } else if len(errRatedCdrs) != 2 { // The first 2 with errors should be still there before rerating - t.Error(fmt.Sprintf("Unexpected number of CDRs with errors: %d", len(errRatedCdrs))) - } - if err := cgrRpc.Call("MediatorV1.RateCdrs", utils.AttrRateCdrs{RerateErrors: true}, &reply); err != nil { - t.Error(err.Error()) - } else if reply != utils.OK { - t.Errorf("Unexpected reply: %s", reply) - } - if errRatedCdrs, err := cdrStor.GetStoredCdrs(nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, 0, time.Time{}, time.Time{}, false, true); err != nil { - t.Error(err) - } else if len(errRatedCdrs) != 1 { // One CDR with errors should be fixed now by rerating + } else if len(errRatedCdrs) != 3 { t.Error(fmt.Sprintf("Unexpected number of CDRs with errors: %d", len(errRatedCdrs))) } }