11import { ModelApi } from '@hypertrace/hyperdash' ;
2+ import { ObservabilityTraceType } from '@hypertrace/observability' ;
23import { spanIdKey } from '../../../../graphql/model/schema/span' ;
34import { traceIdKey , traceTypeKey , TRACE_SCOPE } from '../../../../graphql/model/schema/trace' ;
45import {
89import { ObservedGraphQlRequest } from '../../../data/graphql/graphql-query-event.service' ;
910import { ApiTraceDetailDataSourceModel } from './api-trace-detail-data-source.model' ;
1011
11- describe ( 'Trace detail data source model' , ( ) => {
12+ describe ( 'API Trace detail data source model' , ( ) => {
1213 const testTimeRange = { startTime : new Date ( 1568907645141 ) , endTime : new Date ( 1568911245141 ) } ;
1314 let model ! : ApiTraceDetailDataSourceModel ;
1415 let emittedQueries : unknown ;
@@ -66,7 +67,11 @@ describe('Trace detail data source model', () => {
6667 } ) ;
6768 } ) ;
6869
69- test ( 'builds expected request' , ( ) => {
70+ test ( 'builds expected request for API_TRACE' , ( ) => {
71+ model . trace = {
72+ [ traceIdKey ] : 'test' ,
73+ [ traceTypeKey ] : ObservabilityTraceType . Api
74+ } ;
7075 const data$ = model . getData ( ) ;
7176 data$ . subscribe ( ) ;
7277
@@ -86,6 +91,25 @@ describe('Trace detail data source model', () => {
8691 ) ;
8792 } ) ;
8893
94+ test ( 'builds expected request' , ( ) => {
95+ const data$ = model . getData ( ) ;
96+ data$ . subscribe ( ) ;
97+
98+ expect ( emittedQueries ) . toEqual (
99+ expect . objectContaining ( {
100+ requestType : TRACE_GQL_REQUEST ,
101+ traceId : 'test' ,
102+ spanLimit : 0 ,
103+ timestamp : undefined ,
104+ traceProperties : expect . arrayContaining ( [
105+ expect . objectContaining ( { name : 'tags' } ) ,
106+ expect . objectContaining ( { name : 'traceId' } ) ,
107+ expect . objectContaining ( { name : 'statusCode' } )
108+ ] )
109+ } )
110+ ) ;
111+ } ) ;
112+
89113 test ( 'builds expected request with start time' , ( ) => {
90114 model . startTime = 1568907645141 ;
91115 const data$ = model . getData ( ) ;
@@ -100,8 +124,7 @@ describe('Trace detail data source model', () => {
100124 traceProperties : expect . arrayContaining ( [
101125 expect . objectContaining ( { name : 'tags' } ) ,
102126 expect . objectContaining ( { name : 'traceId' } ) ,
103- expect . objectContaining ( { name : 'statusCode' } ) ,
104- expect . objectContaining ( { name : 'apiCalleeNameCount' } )
127+ expect . objectContaining ( { name : 'statusCode' } )
105128 ] )
106129 } )
107130 ) ;
0 commit comments