<commit_before>describe KnapsackPro::TestCaseDetectors::RSpecTestExampleDetector do
  let(:report_dir) { '.knapsack_pro/test_case_detectors/rspec' }
  let(:report_path) { '.knapsack_pro/test_case_detectors/rspec/rspec_dry_run_json_report_node_0.json' }
  let(:rspec_test_example_detector) { described_class.new }

  describe '#generate_json_report' do
    subject { rspec_test_example_detector.generate_json_report }

    before do
      expect(KnapsackPro::Config::TempFiles).to receive(:ensure_temp_directory_exists!)

      expect(FileUtils).to receive(:mkdir_p).with(report_dir)

      expect(File).to receive(:exist?).at_least(1).with(report_path).and_return(true)
      expect(File).to receive(:delete).with(report_path)

      expect(rspec_test_example_detector).to receive(:slow_test_files).and_return(test_file_entities)
    end<commit_msg>at_least(:once) - use word instead of integer<commit_after>describe KnapsackPro::TestCaseDetectors::RSpecTestExampleDetector do
  let(:report_dir) { '.knapsack_pro/test_case_detectors/rspec' }
  let(:report_path) { '.knapsack_pro/test_case_detectors/rspec/rspec_dry_run_json_report_node_0.json' }
  let(:rspec_test_example_detector) { described_class.new }

  describe '#generate_json_report' do
    subject { rspec_test_example_detector.generate_json_report }

    before do
      expect(KnapsackPro::Config::TempFiles).to receive(:ensure_temp_directory_exists!)

      expect(FileUtils).to receive(:mkdir_p).with(report_dir)

      expect(File).to receive(:exist?).at_least(:once).with(report_path).and_return(true)
      expect(File).to receive(:delete).with(report_path)

      expect(rspec_test_example_detector).to receive(:slow_test_files).and_return(test_file_entities)
    end
{'fraction_non_alphanumeric': 0.11245674740484429, 'fraction_numerical': 0.0017301038062283738, 'mean_word_length': 6.609649122807017, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2145601', 'n_tokens_mistral': 597, 'n_tokens_neox': 571, 'n_words': 58}