@@ -544,6 +544,126 @@ const tests = [
544544 } ,
545545 } ,
546546 } ,
547+ {
548+ query : 'type:expense group-by:from' ,
549+ expected : {
550+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
551+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
552+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_FROM ,
553+ sortOrder : CONST . SEARCH . SORT_ORDER . ASC ,
554+ view : 'table' ,
555+ groupBy : CONST . SEARCH . GROUP_BY . FROM ,
556+ filters : null ,
557+ } ,
558+ } ,
559+ {
560+ query : 'type:expense group-by:card' ,
561+ expected : {
562+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
563+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
564+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_CARD ,
565+ sortOrder : CONST . SEARCH . SORT_ORDER . ASC ,
566+ view : 'table' ,
567+ groupBy : CONST . SEARCH . GROUP_BY . CARD ,
568+ filters : null ,
569+ } ,
570+ } ,
571+ {
572+ query : 'type:expense group-by:withdrawal-id' ,
573+ expected : {
574+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
575+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
576+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_WITHDRAWN ,
577+ sortOrder : CONST . SEARCH . SORT_ORDER . DESC ,
578+ view : 'table' ,
579+ groupBy : CONST . SEARCH . GROUP_BY . WITHDRAWAL_ID ,
580+ filters : null ,
581+ } ,
582+ } ,
583+ {
584+ query : 'type:expense group-by:category' ,
585+ expected : {
586+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
587+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
588+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_CATEGORY ,
589+ sortOrder : CONST . SEARCH . SORT_ORDER . ASC ,
590+ view : 'table' ,
591+ groupBy : CONST . SEARCH . GROUP_BY . CATEGORY ,
592+ filters : null ,
593+ } ,
594+ } ,
595+ {
596+ query : 'type:expense group-by:tag' ,
597+ expected : {
598+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
599+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
600+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_TAG ,
601+ sortOrder : CONST . SEARCH . SORT_ORDER . ASC ,
602+ view : 'table' ,
603+ groupBy : CONST . SEARCH . GROUP_BY . TAG ,
604+ filters : null ,
605+ } ,
606+ } ,
607+ {
608+ query : 'type:expense group-by:merchant' ,
609+ expected : {
610+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
611+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
612+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_MERCHANT ,
613+ sortOrder : CONST . SEARCH . SORT_ORDER . ASC ,
614+ view : 'table' ,
615+ groupBy : CONST . SEARCH . GROUP_BY . MERCHANT ,
616+ filters : null ,
617+ } ,
618+ } ,
619+ {
620+ query : 'type:expense group-by:month' ,
621+ expected : {
622+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
623+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
624+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_MONTH ,
625+ sortOrder : CONST . SEARCH . SORT_ORDER . DESC ,
626+ view : 'table' ,
627+ groupBy : CONST . SEARCH . GROUP_BY . MONTH ,
628+ filters : null ,
629+ } ,
630+ } ,
631+ {
632+ query : 'type:expense group-by:week' ,
633+ expected : {
634+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
635+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
636+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_WEEK ,
637+ sortOrder : CONST . SEARCH . SORT_ORDER . DESC ,
638+ view : 'table' ,
639+ groupBy : CONST . SEARCH . GROUP_BY . WEEK ,
640+ filters : null ,
641+ } ,
642+ } ,
643+ {
644+ query : 'type:expense group-by:year' ,
645+ expected : {
646+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
647+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
648+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_YEAR ,
649+ sortOrder : CONST . SEARCH . SORT_ORDER . DESC ,
650+ view : 'table' ,
651+ groupBy : CONST . SEARCH . GROUP_BY . YEAR ,
652+ filters : null ,
653+ } ,
654+ } ,
655+ {
656+ query : 'type:expense group-by:quarter' ,
657+ expected : {
658+ type : CONST . SEARCH . DATA_TYPES . EXPENSE ,
659+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
660+ sortBy : CONST . SEARCH . TABLE_COLUMNS . GROUP_QUARTER ,
661+ sortOrder : CONST . SEARCH . SORT_ORDER . DESC ,
662+ view : 'table' ,
663+ groupBy : CONST . SEARCH . GROUP_BY . QUARTER ,
664+ filters : null ,
665+ } ,
666+ } ,
547667 {
548668 query : 'type:chat is:read' ,
549669 expected : {
@@ -815,6 +935,44 @@ const keywordTests = [
815935 } ,
816936 } ,
817937 } ,
938+ {
939+ query : 'columns:per-diem,drafts,draft,tax-rate,policy-name,withdrawal-id,bank-account' ,
940+ expected : {
941+ type : 'expense' ,
942+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
943+ sortBy : 'date' ,
944+ sortOrder : 'desc' ,
945+ view : 'table' ,
946+ columns : [
947+ 'perDiem' ,
948+ 'drafts' ,
949+ 'drafts' ,
950+ CONST . SEARCH . TABLE_COLUMNS . TAX_RATE ,
951+ CONST . SEARCH . TABLE_COLUMNS . POLICY_NAME ,
952+ CONST . SEARCH . TABLE_COLUMNS . WITHDRAWAL_ID ,
953+ CONST . SEARCH . TABLE_COLUMNS . BANK_ACCOUNT ,
954+ ] ,
955+ filters : null ,
956+ } ,
957+ } ,
958+ {
959+ query : 'columns:long-report-id,exported-to,exchange-rate,reimbursable-total,non-reimbursable-total' ,
960+ expected : {
961+ type : 'expense' ,
962+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
963+ sortBy : 'date' ,
964+ sortOrder : 'desc' ,
965+ view : 'table' ,
966+ columns : [
967+ CONST . SEARCH . TABLE_COLUMNS . REPORT_ID ,
968+ CONST . SEARCH . TABLE_COLUMNS . EXPORTED_TO ,
969+ CONST . SEARCH . TABLE_COLUMNS . EXCHANGE_RATE ,
970+ CONST . SEARCH . TABLE_COLUMNS . REIMBURSABLE_TOTAL ,
971+ CONST . SEARCH . TABLE_COLUMNS . NON_REIMBURSABLE_TOTAL ,
972+ ] ,
973+ filters : null ,
974+ } ,
975+ } ,
818976 {
819977 query : 'columns:original-amount,tax,report-id' ,
820978 expected : {
@@ -823,7 +981,48 @@ const keywordTests = [
823981 sortBy : 'date' ,
824982 sortOrder : 'desc' ,
825983 view : 'table' ,
826- columns : [ 'originalamount' , 'taxAmount' , 'base62ReportID' ] ,
984+ columns : [ CONST . SEARCH . TABLE_COLUMNS . ORIGINAL_AMOUNT , CONST . SEARCH . TABLE_COLUMNS . TAX_AMOUNT , CONST . SEARCH . TABLE_COLUMNS . BASE_62_REPORT_ID ] ,
985+ filters : null ,
986+ } ,
987+ } ,
988+ {
989+ query : 'columns:group-from,group-expenses,group-total,group-card,group-feed,group-bank-account,group-withdrawn,group-withdrawal-id' ,
990+ expected : {
991+ type : 'expense' ,
992+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
993+ sortBy : 'date' ,
994+ sortOrder : 'desc' ,
995+ view : 'table' ,
996+ columns : [
997+ CONST . SEARCH . TABLE_COLUMNS . GROUP_FROM ,
998+ CONST . SEARCH . TABLE_COLUMNS . GROUP_EXPENSES ,
999+ CONST . SEARCH . TABLE_COLUMNS . GROUP_TOTAL ,
1000+ CONST . SEARCH . TABLE_COLUMNS . GROUP_CARD ,
1001+ CONST . SEARCH . TABLE_COLUMNS . GROUP_FEED ,
1002+ CONST . SEARCH . TABLE_COLUMNS . GROUP_BANK_ACCOUNT ,
1003+ CONST . SEARCH . TABLE_COLUMNS . GROUP_WITHDRAWN ,
1004+ CONST . SEARCH . TABLE_COLUMNS . GROUP_WITHDRAWAL_ID ,
1005+ ] ,
1006+ filters : null ,
1007+ } ,
1008+ } ,
1009+ {
1010+ query : 'columns:group-category,group-tag,group-merchant,group-month,group-week,group-year,group-quarter' ,
1011+ expected : {
1012+ type : 'expense' ,
1013+ status : CONST . SEARCH . STATUS . EXPENSE . ALL ,
1014+ sortBy : 'date' ,
1015+ sortOrder : 'desc' ,
1016+ view : 'table' ,
1017+ columns : [
1018+ CONST . SEARCH . TABLE_COLUMNS . GROUP_CATEGORY ,
1019+ CONST . SEARCH . TABLE_COLUMNS . GROUP_TAG ,
1020+ CONST . SEARCH . TABLE_COLUMNS . GROUP_MERCHANT ,
1021+ CONST . SEARCH . TABLE_COLUMNS . GROUP_MONTH ,
1022+ CONST . SEARCH . TABLE_COLUMNS . GROUP_WEEK ,
1023+ CONST . SEARCH . TABLE_COLUMNS . GROUP_YEAR ,
1024+ CONST . SEARCH . TABLE_COLUMNS . GROUP_QUARTER ,
1025+ ] ,
8271026 filters : null ,
8281027 } ,
8291028 } ,
0 commit comments