code: def test_valid_start_time_duration_with_precision(
      self, start_time, duration, output_precision
  ):
      # Test with valid beginning time, duration values and output precision
      confidence = 0.5
      result = get_ctm_line(
          source="test_source",
          channel=1,
          start_time=start_time,
          duration=duration,
          token="word",
          conf=confidence,
          type_of_token="lex",
          speaker="speaker1",
          output_precision=output_precision,
      )
      expected_start_time = f"{start_time:.{output_precision}f}"  # Adjusted to match the output format with precision
      expected_duration = f"{duration:.{output_precision}f}"  # Adjusted to match the output format with precision
      expected_confidence = f"{confidence:.{output_precision}f}"  # Adjusted to match the output format with precision
      expected = f"test_source 1 {expected_start_time} {expected_duration} word {expected_confidence} lex speaker1\n"
      assert (
          result == expected
      ), f"Failed on valid start_time {start_time}, duration {duration} with precision {output_precision}"
  
imports: import os
  import numpy
  import pytest
  import torch
  from omegaconf import DictConfig
  from nemo.collections.asr.parts.utils.data_simulation_utils import DataAnnotator, SpeechSampler, add_silence_to_alignments, binary_search_alignments, get_cleaned_base_path, get_split_points_in_alignments, normalize_audio, read_noise_manifest
  from nemo.collections.asr.parts.utils.manifest_utils import get_ctm_line
label_desc: Use image node_id 4 for calling the TestGetCtmLine obj's underlying member method code with example usage: obj.test_valid_start_time_duration_with_precision(start_time, duration, output_precision) without return types