import 'package:flutter_test/flutter_test.dart';

import 'package:mini_tias/services/file_service.dart';

void main() {
  group('FileService.generateFileNameSync', () {
    test('同秒のファイルが存在しない場合，サフィックスなしのファイル名を返す', () {
      final result = FileService.generateFileNameSync('20260404_120000', []);
      expect(result, 'MiniTIAS_20260404_120000.png');
    });

    test('同秒のファイルが存在する場合，_1 サフィックスを付与する', () {
      final result = FileService.generateFileNameSync('20260404_120000', [
        'MiniTIAS_20260404_120000.png',
      ]);
      expect(result, 'MiniTIAS_20260404_120000_1.png');
    });

    test('_1 も存在する場合，_2 サフィックスを付与する', () {
      final result = FileService.generateFileNameSync('20260404_120000', [
        'MiniTIAS_20260404_120000.png',
        'MiniTIAS_20260404_120000_1.png',
      ]);
      expect(result, 'MiniTIAS_20260404_120000_2.png');
    });

    test('異なるタイムスタンプのファイルが存在しても影響しない', () {
      final result = FileService.generateFileNameSync('20260404_120000', [
        'MiniTIAS_20260404_120001.png',
      ]);
      expect(result, 'MiniTIAS_20260404_120000.png');
    });
  });
}
