blob: c4ef317404260c1c70a2bd912b51cb984aaad5f6 [file] [log] [blame]
Austin Schuh812d0d12021-11-04 20:16:48 -07001// Copyright (c) FIRST and other WPILib contributors.
2// Open Source Software; you can modify and/or share it under the terms of
3// the WPILib BSD license file in the root directory of this project.
Austin Schuh1e69f942020-11-14 15:06:14 -08004
Austin Schuh812d0d12021-11-04 20:16:48 -07005#include <string_view>
Austin Schuh1e69f942020-11-14 15:06:14 -08006
7#include <wpi/SmallString.h>
Austin Schuh812d0d12021-11-04 20:16:48 -07008#include <wpi/StringExtras.h>
Austin Schuh1e69f942020-11-14 15:06:14 -08009#include <wpi/raw_ostream.h>
10
11#include "frc/ScopedTracer.h"
Austin Schuh812d0d12021-11-04 20:16:48 -070012#include "frc/simulation/SimHooks.h"
Austin Schuh1e69f942020-11-14 15:06:14 -080013#include "gtest/gtest.h"
14
Austin Schuh1e69f942020-11-14 15:06:14 -080015TEST(ScopedTracerTest, Timing) {
Austin Schuh812d0d12021-11-04 20:16:48 -070016 wpi::SmallString<128> buf;
17 wpi::raw_svector_ostream os(buf);
18
19 frc::sim::PauseTiming();
Austin Schuh1e69f942020-11-14 15:06:14 -080020 {
21 frc::ScopedTracer tracer("timing_test", os);
Austin Schuh812d0d12021-11-04 20:16:48 -070022 frc::sim::StepTiming(1.5_s);
Austin Schuh1e69f942020-11-14 15:06:14 -080023 }
Austin Schuh812d0d12021-11-04 20:16:48 -070024 frc::sim::ResumeTiming();
Austin Schuh1e69f942020-11-14 15:06:14 -080025
Austin Schuh812d0d12021-11-04 20:16:48 -070026 std::string_view out = os.str();
27 EXPECT_TRUE(wpi::starts_with(out, " timing_test: 1.5"));
Austin Schuh1e69f942020-11-14 15:06:14 -080028}