@@ -69,6 +69,11 @@ describe("filterFn", () => {
6969 const filterWrongCase = "HELLO" ;
7070 const filterExact = "Hello" ;
7171
72+ it ( "whitespace: matches non-empty value" , ( ) => {
73+ expect ( ff . matchesFilter ( value , " " ) ) . toBeTruthy ( ) ;
74+ expect ( ff . matchesFilter ( "" , " " ) ) . toBeFalsy ( ) ;
75+ } ) ;
76+
7277 it ( "unquoted: trims whitespace, fuzzy match" , ( ) => {
7378 expect ( ff . matchesFilter ( value , "goodbye" ) ) . toBeFalsy ( ) ;
7479 expect ( ff . matchesFilter ( value , ` ${ filterWithTypo } ` ) ) . toBeTruthy ( ) ;
@@ -89,6 +94,12 @@ describe("filterFn", () => {
8994 mockGetValue . mockReturnValue ( "Hello world!" ) ;
9095 } ) ;
9196
97+ it ( "whitespace: matches non-empty value" , ( ) => {
98+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeTruthy ( ) ;
99+ mockGetValue . mockReturnValueOnce ( "" ) ;
100+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeFalsy ( ) ;
101+ } ) ;
102+
92103 it ( "unquoted: trims whitespace, fuzzy match" , ( ) => {
93104 expect ( filterFn ( mockRow , mockId , "goodbye" ) ) . toBeFalsy ( ) ;
94105 expect ( filterFn ( mockRow , mockId , " H3LLO" ) ) . toBeTruthy ( ) ;
@@ -110,6 +121,14 @@ describe("filterFn", () => {
110121 ] ) ;
111122 } ) ;
112123
124+ it ( "whitespace: matches non-empty definition text" , ( ) => {
125+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeTruthy ( ) ;
126+ mockGetValue . mockReturnValueOnce ( [ newDefinition ( ) ] ) ;
127+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeFalsy ( ) ;
128+ mockGetValue . mockReturnValueOnce ( [ ] ) ;
129+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeFalsy ( ) ;
130+ } ) ;
131+
113132 it ( "unquoted: trims whitespace, fuzzy match" , ( ) => {
114133 expect ( filterFn ( mockRow , mockId , "earth" ) ) . toBeFalsy ( ) ;
115134 expect ( filterFn ( mockRow , mockId , " wrld\t" ) ) . toBeTruthy ( ) ;
@@ -128,6 +147,14 @@ describe("filterFn", () => {
128147 mockGetValue . mockReturnValue ( [ newGloss ( "hello" ) , newGloss ( "WORLD" ) ] ) ;
129148 } ) ;
130149
150+ it ( "whitespace: matches non-empty gloss text" , ( ) => {
151+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeTruthy ( ) ;
152+ mockGetValue . mockReturnValueOnce ( [ newGloss ( ) ] ) ;
153+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeFalsy ( ) ;
154+ mockGetValue . mockReturnValueOnce ( [ ] ) ;
155+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeFalsy ( ) ;
156+ } ) ;
157+
131158 it ( "unquoted: trims whitespace, fuzzy match" , ( ) => {
132159 expect ( filterFn ( mockRow , mockId , "earth" ) ) . toBeFalsy ( ) ;
133160 expect ( filterFn ( mockRow , mockId , " wrld\t" ) ) . toBeTruthy ( ) ;
@@ -223,6 +250,12 @@ describe("filterFn", () => {
223250 mockGetValue . mockReturnValue ( newFlag ( "Hello world!" ) ) ;
224251 } ) ;
225252
253+ it ( "whitespace: matches non-empty flag text" , ( ) => {
254+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeTruthy ( ) ;
255+ mockGetValue . mockReturnValueOnce ( newFlag ( ) ) ;
256+ expect ( filterFn ( mockRow , mockId , " " ) ) . toBeFalsy ( ) ;
257+ } ) ;
258+
226259 it ( "unquoted: trims whitespace, fuzzy match" , ( ) => {
227260 expect ( filterFn ( mockRow , mockId , "goodbye" ) ) . toBeFalsy ( ) ;
228261 expect ( filterFn ( mockRow , mockId , " H3LLO" ) ) . toBeTruthy ( ) ;
0 commit comments