Covered fwvdp.go to 100%

This commit is contained in:
porosnicuadrian
2020-11-12 09:46:35 +02:00
committed by Dan Christian Bogos
parent e770ea8c3f
commit f84ef6eaad

View File

@@ -69,6 +69,12 @@ func TestFieldAsInterfaceFWV(t *testing.T) {
} else if !reflect.DeepEqual(expected, received) {
t.Errorf("Expected %+v, received %+v", expected, received)
}
if received, err := dp.FieldAsInterface(pth); err != nil {
t.Error(err)
} else if !reflect.DeepEqual(expected, received) {
t.Errorf("Expected %+v, received %+v", expected, received)
}
}
func TestFieldAsInterfaceFWVEmptyPath(t *testing.T) {
@@ -93,3 +99,83 @@ func TestFieldAsInterfaceFWVInvalidPath(t *testing.T) {
t.Errorf("Expected %+v, received %+v", expected, err)
}
}
func TestFieldAsInterfaceFWVInvalidConvert1(t *testing.T) {
pth := []string{"1s-12"}
record := `"cgrates.org", "ATTR_1"`
dp := &FWVProvider{
req: record,
cache: utils.MapStorage{},
}
expected := "strconv.Atoi: parsing \"1s\": invalid syntax"
if _, err := dp.FieldAsInterface(pth); err == nil || err.Error() != expected {
t.Errorf("Expected %+v, received %+v", expected, err)
}
}
func TestFieldAsInterfaceFWVInvalidConvert2(t *testing.T) {
pth := []string{"1-1s"}
record := `"cgrates.org", "ATTR_1"`
dp := &FWVProvider{
req: record,
cache: utils.MapStorage{},
}
expected := "strconv.Atoi: parsing \"1s\": invalid syntax"
if _, err := dp.FieldAsInterface(pth); err == nil || err.Error() != expected {
t.Errorf("Expected %+v, received %+v", expected, err)
}
}
func TestFieldAsInterfaceFWVLowerLength(t *testing.T) {
pth := []string{"10-14"}
record := `"cgra"`
dp := &FWVProvider{
req: record,
cache: utils.MapStorage{},
}
expected := "StartIndex : 10 is greater than : 6"
if _, err := dp.FieldAsInterface(pth); err == nil || err.Error() != expected {
t.Errorf("Expected %+v, received %+v", expected, err)
}
}
func TestFieldAsInterfaceFWVHigherLength(t *testing.T) {
pth := []string{"3-14"}
record := `"cgra"`
dp := &FWVProvider{
req: record,
cache: utils.MapStorage{},
}
expected := "FinalIndex : 14 is greater than : 6"
if _, err := dp.FieldAsInterface(pth); err == nil || err.Error() != expected {
t.Errorf("Expected %+v, received %+v", expected, err)
}
}
func TestFieldAsStringFWV(t *testing.T) {
pth := []string{"1-12"}
record := `"cgrates.org", "ATTR_1"`
dp := &FWVProvider{
req: record,
cache: utils.MapStorage{},
}
expected := "cgrates.org"
if received, err := dp.FieldAsString(pth); err != nil {
t.Error(err)
} else if !reflect.DeepEqual(expected, received) {
t.Errorf("Expected %+v, received %+v", expected, received)
}
}
func TestFieldAsStringFWVError(t *testing.T) {
pth := []string{"112"}
record := `"cgrates.org", "ATTR_1"`
dp := &FWVProvider{
req: record,
cache: utils.MapStorage{},
}
expected := "Invalid format for index : [112]"
if _, err := dp.FieldAsString(pth); err == nil || err.Error() != expected {
t.Errorf("Expected %+v, received %+v", expected, err)
}
}