11import { NetflowNode } from '../korrel8r/netflow' ;
2+ import { Constraint } from '../redux-actions' ;
23
34// Korrel8r queries contain less information than console URLs.
45// Round-trip conversion is not always equal.
@@ -9,17 +10,29 @@ const roundTrip = [
910 query : 'netflow:network:{SrcK8S_Type="Pod",SrcK8S_Namespace="myNamespace"}' ,
1011 url : `netflow-traffic?tenant=network&filters=${ encodeURIComponent (
1112 'src_kind=Pod;src_namespace=myNamespace' ,
12- ) } `,
13+ ) } &startTime=1742896800&endTime=1742940000`,
14+ constraint : {
15+ start : '2025-03-25T10:00:00.000Z' ,
16+ end : '2025-03-25T22:00:00.000Z' ,
17+ } as Constraint ,
1318 } ,
1419 {
15- url : 'netflow-traffic?tenant=network&filters=src_namespace%3Dnetobserv' ,
20+ url : 'netflow-traffic?tenant=network&filters=src_namespace%3Dnetobserv&startTime=1742896800&endTime=1742940000 ' ,
1621 query : 'netflow:network:{SrcK8S_Namespace="netobserv"}' ,
22+ constraint : {
23+ start : '2025-03-25T10:00:00.000Z' ,
24+ end : '2025-03-25T22:00:00.000Z' ,
25+ } as Constraint ,
1726 } ,
1827 {
1928 query : 'netflow:network:{SrcK8S_Type!="Pod",SrcK8S_Namespace!="myNamespace"}' ,
2029 url : `netflow-traffic?tenant=network&filters=${ encodeURIComponent (
2130 'src_kind!=Pod;src_namespace!=myNamespace' ,
22- ) } `,
31+ ) } &startTime=1742896800&endTime=1742940000`,
32+ constraint : {
33+ start : '2025-03-25T10:00:00.000Z' ,
34+ end : '2025-03-25T22:00:00.000Z' ,
35+ } as Constraint ,
2336 } ,
2437] ;
2538
@@ -29,9 +42,17 @@ describe('NetflowNode.fromQuery', () => {
2942 {
3043 // Ignores unknown keys
3144 query : 'netflow:network:{InvalidKey="Pod",SrcK8S_Namespace="foo"}' ,
32- url : `netflow-traffic?tenant=network&filters=${ encodeURIComponent ( 'src_namespace=foo' ) } ` ,
45+ url : `netflow-traffic?tenant=network&filters=${ encodeURIComponent (
46+ 'src_namespace=foo' ,
47+ ) } &startTime=1742896800&endTime=1742940000`,
48+ constraint : {
49+ start : '2025-03-25T10:00:00.000Z' ,
50+ end : '2025-03-25T22:00:00.000Z' ,
51+ } as Constraint ,
3352 } ,
34- ] ) ( `from $query` , ( { query, url } ) => expect ( NetflowNode . fromQuery ( query ) . toURL ( ) ) . toEqual ( url ) ) ;
53+ ] ) ( `from $query` , ( { query, url, constraint } ) =>
54+ expect ( NetflowNode . fromQuery ( query , constraint ) . toURL ( ) ) . toEqual ( url ) ,
55+ ) ;
3556} ) ;
3657
3758describe ( 'NetflowNode.fromURL' , ( ) => {
@@ -82,6 +103,6 @@ describe('', () => {
82103 expected : 'Expected filter to be key="value": SrcK8S_Type' ,
83104 } ,
84105 ] ) ( 'expect error fromQuery($query)' , ( { query, expected } ) => {
85- expect ( ( ) => NetflowNode . fromQuery ( query ) ) . toThrow ( expected ) ;
106+ expect ( ( ) => NetflowNode . fromQuery ( query , null ) ) . toThrow ( expected ) ;
86107 } ) ;
87108} ) ;
0 commit comments