From bb01740321fbaa7ea75b4de69d7a91c61c5e96ec Mon Sep 17 00:00:00 2001 From: DanB Date: Tue, 10 Feb 2015 16:39:10 +0100 Subject: [PATCH] RSRField filter checking empty values --- utils/rsrfield.go | 3 --- utils/rsrfield_test.go | 10 ++++++++++ 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/utils/rsrfield.go b/utils/rsrfield.go index c91f6ae1d..488e1131d 100644 --- a/utils/rsrfield.go +++ b/utils/rsrfield.go @@ -89,9 +89,6 @@ func (rsrf *RSRField) ParseValue(value string) string { if len(rsrf.staticValue) != 0 { // Enforce parsing of static values return rsrf.staticValue } - if len(value) == 0 { - return value - } for _, rsRule := range rsrf.RSRules { if rsRule != nil { value = rsRule.Process(value) diff --git a/utils/rsrfield_test.go b/utils/rsrfield_test.go index 3fbdabe95..dc9eaccad 100644 --- a/utils/rsrfield_test.go +++ b/utils/rsrfield_test.go @@ -195,4 +195,14 @@ func TestFilterPasses(t *testing.T) { if rl.FilterPasses("0031ABOC0630415354") { t.Error("Passing filter") } + rl, err = NewRSRField(`~1:s/^$/_empty_/(_empty_)`) + if err != nil { + t.Error("Unexpected error: ", err) + } + if !rl.FilterPasses("") { + t.Error("Not passing filter") + } + if rl.FilterPasses("Non empty") { + t.Error("Passing filter") + } }