xref: /aosp_15_r20/development/tools/winscope/src/common/time_test.ts (revision 90c8c64db3049935a07c6143d7fd006e26f8ecca)
1*90c8c64dSAndroid Build Coastguard Worker/*
2*90c8c64dSAndroid Build Coastguard Worker * Copyright (C) 2022 The Android Open Source Project
3*90c8c64dSAndroid Build Coastguard Worker *
4*90c8c64dSAndroid Build Coastguard Worker * Licensed under the Apache License, Version 2.0 (the "License");
5*90c8c64dSAndroid Build Coastguard Worker * you may not use this file except in compliance with the License.
6*90c8c64dSAndroid Build Coastguard Worker * You may obtain a copy of the License at
7*90c8c64dSAndroid Build Coastguard Worker *
8*90c8c64dSAndroid Build Coastguard Worker *      http://www.apache.org/licenses/LICENSE-2.0
9*90c8c64dSAndroid Build Coastguard Worker *
10*90c8c64dSAndroid Build Coastguard Worker * Unless required by applicable law or agreed to in writing, software
11*90c8c64dSAndroid Build Coastguard Worker * distributed under the License is distributed on an "AS IS" BASIS,
12*90c8c64dSAndroid Build Coastguard Worker * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*90c8c64dSAndroid Build Coastguard Worker * See the License for the specific language governing permissions and
14*90c8c64dSAndroid Build Coastguard Worker * limitations under the License.
15*90c8c64dSAndroid Build Coastguard Worker */
16*90c8c64dSAndroid Build Coastguard Worker
17*90c8c64dSAndroid Build Coastguard Workerimport {TimestampConverterUtils} from 'test/unit/timestamp_converter_utils';
18*90c8c64dSAndroid Build Coastguard Workerimport {TimeRange} from './time';
19*90c8c64dSAndroid Build Coastguard Workerimport {TIME_UNIT_TO_NANO} from './time_units';
20*90c8c64dSAndroid Build Coastguard Worker
21*90c8c64dSAndroid Build Coastguard Workerdescribe('Timestamp', () => {
22*90c8c64dSAndroid Build Coastguard Worker  describe('arithmetic', () => {
23*90c8c64dSAndroid Build Coastguard Worker    const REAL_TIMESTAMP_10 = TimestampConverterUtils.makeRealTimestamp(10n);
24*90c8c64dSAndroid Build Coastguard Worker    const REAL_TIMESTAMP_20 = TimestampConverterUtils.makeRealTimestamp(20n);
25*90c8c64dSAndroid Build Coastguard Worker    const ELAPSED_TIMESTAMP_10 =
26*90c8c64dSAndroid Build Coastguard Worker      TimestampConverterUtils.makeElapsedTimestamp(10n);
27*90c8c64dSAndroid Build Coastguard Worker    const ELAPSED_TIMESTAMP_20 =
28*90c8c64dSAndroid Build Coastguard Worker      TimestampConverterUtils.makeElapsedTimestamp(20n);
29*90c8c64dSAndroid Build Coastguard Worker
30*90c8c64dSAndroid Build Coastguard Worker    it('can add', () => {
31*90c8c64dSAndroid Build Coastguard Worker      let timestamp = REAL_TIMESTAMP_10.add(REAL_TIMESTAMP_20.getValueNs());
32*90c8c64dSAndroid Build Coastguard Worker      expect(timestamp.getValueNs()).toBe(30n);
33*90c8c64dSAndroid Build Coastguard Worker
34*90c8c64dSAndroid Build Coastguard Worker      timestamp = ELAPSED_TIMESTAMP_10.add(ELAPSED_TIMESTAMP_20.getValueNs());
35*90c8c64dSAndroid Build Coastguard Worker      expect(timestamp.getValueNs()).toBe(30n);
36*90c8c64dSAndroid Build Coastguard Worker    });
37*90c8c64dSAndroid Build Coastguard Worker
38*90c8c64dSAndroid Build Coastguard Worker    it('can subtract', () => {
39*90c8c64dSAndroid Build Coastguard Worker      let timestamp = REAL_TIMESTAMP_20.minus(REAL_TIMESTAMP_10.getValueNs());
40*90c8c64dSAndroid Build Coastguard Worker      expect(timestamp.getValueNs()).toBe(10n);
41*90c8c64dSAndroid Build Coastguard Worker
42*90c8c64dSAndroid Build Coastguard Worker      timestamp = ELAPSED_TIMESTAMP_20.minus(ELAPSED_TIMESTAMP_10.getValueNs());
43*90c8c64dSAndroid Build Coastguard Worker      expect(timestamp.getValueNs()).toBe(10n);
44*90c8c64dSAndroid Build Coastguard Worker    });
45*90c8c64dSAndroid Build Coastguard Worker
46*90c8c64dSAndroid Build Coastguard Worker    it('can divide', () => {
47*90c8c64dSAndroid Build Coastguard Worker      let timestamp = TimestampConverterUtils.makeRealTimestamp(10n).div(2n);
48*90c8c64dSAndroid Build Coastguard Worker      expect(timestamp.getValueNs()).toBe(5n);
49*90c8c64dSAndroid Build Coastguard Worker
50*90c8c64dSAndroid Build Coastguard Worker      timestamp = ELAPSED_TIMESTAMP_10.div(2n);
51*90c8c64dSAndroid Build Coastguard Worker      expect(timestamp.getValueNs()).toBe(5n);
52*90c8c64dSAndroid Build Coastguard Worker    });
53*90c8c64dSAndroid Build Coastguard Worker  });
54*90c8c64dSAndroid Build Coastguard Worker
55*90c8c64dSAndroid Build Coastguard Worker  describe('formatting', () => {
56*90c8c64dSAndroid Build Coastguard Worker    const MILLISECOND = BigInt(TIME_UNIT_TO_NANO.ms);
57*90c8c64dSAndroid Build Coastguard Worker    const SECOND = BigInt(TIME_UNIT_TO_NANO.s);
58*90c8c64dSAndroid Build Coastguard Worker    const MINUTE = BigInt(TIME_UNIT_TO_NANO.m);
59*90c8c64dSAndroid Build Coastguard Worker    const HOUR = BigInt(TIME_UNIT_TO_NANO.h);
60*90c8c64dSAndroid Build Coastguard Worker    const DAY = BigInt(TIME_UNIT_TO_NANO.d);
61*90c8c64dSAndroid Build Coastguard Worker
62*90c8c64dSAndroid Build Coastguard Worker    it('elapsed timestamps', () => {
63*90c8c64dSAndroid Build Coastguard Worker      expect(TimestampConverterUtils.makeElapsedTimestamp(0n).format()).toEqual(
64*90c8c64dSAndroid Build Coastguard Worker        '0ns',
65*90c8c64dSAndroid Build Coastguard Worker      );
66*90c8c64dSAndroid Build Coastguard Worker      expect(
67*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(1000n).format(),
68*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1000ns');
69*90c8c64dSAndroid Build Coastguard Worker      expect(
70*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(
71*90c8c64dSAndroid Build Coastguard Worker          10n * MILLISECOND,
72*90c8c64dSAndroid Build Coastguard Worker        ).format(),
73*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('10ms0ns');
74*90c8c64dSAndroid Build Coastguard Worker
75*90c8c64dSAndroid Build Coastguard Worker      expect(
76*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(SECOND - 1n).format(),
77*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('999ms999999ns');
78*90c8c64dSAndroid Build Coastguard Worker      expect(
79*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(SECOND).format(),
80*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1s0ms0ns');
81*90c8c64dSAndroid Build Coastguard Worker      expect(
82*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(
83*90c8c64dSAndroid Build Coastguard Worker          SECOND + MILLISECOND,
84*90c8c64dSAndroid Build Coastguard Worker        ).format(),
85*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1s1ms0ns');
86*90c8c64dSAndroid Build Coastguard Worker
87*90c8c64dSAndroid Build Coastguard Worker      expect(
88*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(MINUTE - 1n).format(),
89*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('59s999ms999999ns');
90*90c8c64dSAndroid Build Coastguard Worker      expect(
91*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(MINUTE).format(),
92*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1m0s0ms0ns');
93*90c8c64dSAndroid Build Coastguard Worker      expect(
94*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(
95*90c8c64dSAndroid Build Coastguard Worker          MINUTE + SECOND + MILLISECOND,
96*90c8c64dSAndroid Build Coastguard Worker        ).format(),
97*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1m1s1ms0ns');
98*90c8c64dSAndroid Build Coastguard Worker      expect(
99*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(
100*90c8c64dSAndroid Build Coastguard Worker          MINUTE + SECOND + MILLISECOND + 1n,
101*90c8c64dSAndroid Build Coastguard Worker        ).format(),
102*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1m1s1ms1ns');
103*90c8c64dSAndroid Build Coastguard Worker
104*90c8c64dSAndroid Build Coastguard Worker      expect(
105*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(HOUR - 1n).format(),
106*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('59m59s999ms999999ns');
107*90c8c64dSAndroid Build Coastguard Worker      expect(
108*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(HOUR).format(),
109*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1h0m0s0ms0ns');
110*90c8c64dSAndroid Build Coastguard Worker      expect(
111*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(
112*90c8c64dSAndroid Build Coastguard Worker          HOUR + MINUTE + SECOND + MILLISECOND,
113*90c8c64dSAndroid Build Coastguard Worker        ).format(),
114*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1h1m1s1ms0ns');
115*90c8c64dSAndroid Build Coastguard Worker
116*90c8c64dSAndroid Build Coastguard Worker      expect(
117*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(DAY - 1n).format(),
118*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('23h59m59s999ms999999ns');
119*90c8c64dSAndroid Build Coastguard Worker      expect(
120*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(DAY).format(),
121*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1d0h0m0s0ms0ns');
122*90c8c64dSAndroid Build Coastguard Worker      expect(
123*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeElapsedTimestamp(
124*90c8c64dSAndroid Build Coastguard Worker          DAY + HOUR + MINUTE + SECOND + MILLISECOND,
125*90c8c64dSAndroid Build Coastguard Worker        ).format(),
126*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1d1h1m1s1ms0ns');
127*90c8c64dSAndroid Build Coastguard Worker    });
128*90c8c64dSAndroid Build Coastguard Worker
129*90c8c64dSAndroid Build Coastguard Worker    it('real timestamps without timezone info', () => {
130*90c8c64dSAndroid Build Coastguard Worker      const NOV_10_2022 = 1668038400000n * MILLISECOND;
131*90c8c64dSAndroid Build Coastguard Worker      expect(TimestampConverterUtils.makeRealTimestamp(0n).format()).toEqual(
132*90c8c64dSAndroid Build Coastguard Worker        '1970-01-01, 00:00:00.000',
133*90c8c64dSAndroid Build Coastguard Worker      );
134*90c8c64dSAndroid Build Coastguard Worker      expect(
135*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeRealTimestamp(
136*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022 +
137*90c8c64dSAndroid Build Coastguard Worker            22n * HOUR +
138*90c8c64dSAndroid Build Coastguard Worker            4n * MINUTE +
139*90c8c64dSAndroid Build Coastguard Worker            54n * SECOND +
140*90c8c64dSAndroid Build Coastguard Worker            186n * MILLISECOND +
141*90c8c64dSAndroid Build Coastguard Worker            123212n,
142*90c8c64dSAndroid Build Coastguard Worker        ).format(),
143*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 22:04:54.186');
144*90c8c64dSAndroid Build Coastguard Worker      expect(
145*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeRealTimestamp(NOV_10_2022).format(),
146*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 00:00:00.000');
147*90c8c64dSAndroid Build Coastguard Worker      expect(
148*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeRealTimestamp(NOV_10_2022 + 1n).format(),
149*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 00:00:00.000');
150*90c8c64dSAndroid Build Coastguard Worker
151*90c8c64dSAndroid Build Coastguard Worker      expect(TimestampConverterUtils.makeRealTimestamp(0n).format()).toEqual(
152*90c8c64dSAndroid Build Coastguard Worker        '1970-01-01, 00:00:00.000',
153*90c8c64dSAndroid Build Coastguard Worker      );
154*90c8c64dSAndroid Build Coastguard Worker      expect(
155*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeRealTimestamp(
156*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022 +
157*90c8c64dSAndroid Build Coastguard Worker            22n * HOUR +
158*90c8c64dSAndroid Build Coastguard Worker            4n * MINUTE +
159*90c8c64dSAndroid Build Coastguard Worker            54n * SECOND +
160*90c8c64dSAndroid Build Coastguard Worker            186n * MILLISECOND +
161*90c8c64dSAndroid Build Coastguard Worker            123212n,
162*90c8c64dSAndroid Build Coastguard Worker        ).format(),
163*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 22:04:54.186');
164*90c8c64dSAndroid Build Coastguard Worker      expect(
165*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeRealTimestamp(NOV_10_2022).format(),
166*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 00:00:00.000');
167*90c8c64dSAndroid Build Coastguard Worker      expect(
168*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.makeRealTimestamp(NOV_10_2022 + 1n).format(),
169*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 00:00:00.000');
170*90c8c64dSAndroid Build Coastguard Worker    });
171*90c8c64dSAndroid Build Coastguard Worker
172*90c8c64dSAndroid Build Coastguard Worker    it('real timestamps with timezone info', () => {
173*90c8c64dSAndroid Build Coastguard Worker      const NOV_10_2022 = 1668038400000n * MILLISECOND;
174*90c8c64dSAndroid Build Coastguard Worker      expect(
175*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
176*90c8c64dSAndroid Build Coastguard Worker          0n,
177*90c8c64dSAndroid Build Coastguard Worker        ).format(),
178*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1970-01-01, 05:30:00.000');
179*90c8c64dSAndroid Build Coastguard Worker      expect(
180*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
181*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022 +
182*90c8c64dSAndroid Build Coastguard Worker            22n * HOUR +
183*90c8c64dSAndroid Build Coastguard Worker            4n * MINUTE +
184*90c8c64dSAndroid Build Coastguard Worker            54n * SECOND +
185*90c8c64dSAndroid Build Coastguard Worker            186n * MILLISECOND +
186*90c8c64dSAndroid Build Coastguard Worker            123212n,
187*90c8c64dSAndroid Build Coastguard Worker        ).format(),
188*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-11, 03:34:54.186');
189*90c8c64dSAndroid Build Coastguard Worker      expect(
190*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
191*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022,
192*90c8c64dSAndroid Build Coastguard Worker        ).format(),
193*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 05:30:00.000');
194*90c8c64dSAndroid Build Coastguard Worker      expect(
195*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
196*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022 + 1n,
197*90c8c64dSAndroid Build Coastguard Worker        ).format(),
198*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 05:30:00.000');
199*90c8c64dSAndroid Build Coastguard Worker
200*90c8c64dSAndroid Build Coastguard Worker      expect(
201*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
202*90c8c64dSAndroid Build Coastguard Worker          0n,
203*90c8c64dSAndroid Build Coastguard Worker        ).format(),
204*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('1970-01-01, 05:30:00.000');
205*90c8c64dSAndroid Build Coastguard Worker      expect(
206*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
207*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022 +
208*90c8c64dSAndroid Build Coastguard Worker            22n * HOUR +
209*90c8c64dSAndroid Build Coastguard Worker            4n * MINUTE +
210*90c8c64dSAndroid Build Coastguard Worker            54n * SECOND +
211*90c8c64dSAndroid Build Coastguard Worker            186n * MILLISECOND +
212*90c8c64dSAndroid Build Coastguard Worker            123212n,
213*90c8c64dSAndroid Build Coastguard Worker        ).format(),
214*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-11, 03:34:54.186');
215*90c8c64dSAndroid Build Coastguard Worker      expect(
216*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
217*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022,
218*90c8c64dSAndroid Build Coastguard Worker        ).format(),
219*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 05:30:00.000');
220*90c8c64dSAndroid Build Coastguard Worker      expect(
221*90c8c64dSAndroid Build Coastguard Worker        TimestampConverterUtils.TIMESTAMP_CONVERTER_WITH_UTC_OFFSET.makeTimestampFromRealNs(
222*90c8c64dSAndroid Build Coastguard Worker          NOV_10_2022 + 1n,
223*90c8c64dSAndroid Build Coastguard Worker        ).format(),
224*90c8c64dSAndroid Build Coastguard Worker      ).toEqual('2022-11-10, 05:30:00.000');
225*90c8c64dSAndroid Build Coastguard Worker    });
226*90c8c64dSAndroid Build Coastguard Worker  });
227*90c8c64dSAndroid Build Coastguard Worker});
228*90c8c64dSAndroid Build Coastguard Worker
229*90c8c64dSAndroid Build Coastguard Workerdescribe('TimeRange', () => {
230*90c8c64dSAndroid Build Coastguard Worker  describe('containsTimestamp', () => {
231*90c8c64dSAndroid Build Coastguard Worker    const range = new TimeRange(
232*90c8c64dSAndroid Build Coastguard Worker      TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(10n),
233*90c8c64dSAndroid Build Coastguard Worker      TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(600n),
234*90c8c64dSAndroid Build Coastguard Worker    );
235*90c8c64dSAndroid Build Coastguard Worker
236*90c8c64dSAndroid Build Coastguard Worker    it('returns true for range containing timestamp', () => {
237*90c8c64dSAndroid Build Coastguard Worker      expect(
238*90c8c64dSAndroid Build Coastguard Worker        range.containsTimestamp(
239*90c8c64dSAndroid Build Coastguard Worker          TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(10n),
240*90c8c64dSAndroid Build Coastguard Worker        ),
241*90c8c64dSAndroid Build Coastguard Worker      ).toBeTrue();
242*90c8c64dSAndroid Build Coastguard Worker
243*90c8c64dSAndroid Build Coastguard Worker      expect(
244*90c8c64dSAndroid Build Coastguard Worker        range.containsTimestamp(
245*90c8c64dSAndroid Build Coastguard Worker          TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(600n),
246*90c8c64dSAndroid Build Coastguard Worker        ),
247*90c8c64dSAndroid Build Coastguard Worker      ).toBeTrue();
248*90c8c64dSAndroid Build Coastguard Worker
249*90c8c64dSAndroid Build Coastguard Worker      expect(
250*90c8c64dSAndroid Build Coastguard Worker        range.containsTimestamp(
251*90c8c64dSAndroid Build Coastguard Worker          TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(300n),
252*90c8c64dSAndroid Build Coastguard Worker        ),
253*90c8c64dSAndroid Build Coastguard Worker      ).toBeTrue();
254*90c8c64dSAndroid Build Coastguard Worker    });
255*90c8c64dSAndroid Build Coastguard Worker
256*90c8c64dSAndroid Build Coastguard Worker    it('returns false for range not containing timestamp', () => {
257*90c8c64dSAndroid Build Coastguard Worker      expect(
258*90c8c64dSAndroid Build Coastguard Worker        range.containsTimestamp(
259*90c8c64dSAndroid Build Coastguard Worker          TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(0n),
260*90c8c64dSAndroid Build Coastguard Worker        ),
261*90c8c64dSAndroid Build Coastguard Worker      ).toBeFalse();
262*90c8c64dSAndroid Build Coastguard Worker
263*90c8c64dSAndroid Build Coastguard Worker      expect(
264*90c8c64dSAndroid Build Coastguard Worker        range.containsTimestamp(
265*90c8c64dSAndroid Build Coastguard Worker          TimestampConverterUtils.TIMESTAMP_CONVERTER.makeTimestampFromNs(601n),
266*90c8c64dSAndroid Build Coastguard Worker        ),
267*90c8c64dSAndroid Build Coastguard Worker      ).toBeFalse();
268*90c8c64dSAndroid Build Coastguard Worker    });
269*90c8c64dSAndroid Build Coastguard Worker  });
270*90c8c64dSAndroid Build Coastguard Worker});
271