import 'package:christian_period_tracker/models/cycle_entry.dart';
import 'package:flutter_test/flutter_test.dart';

void main() {
  group('CycleEntry', () {
    test('hasSymptoms returns true when there are symptoms', () {
      final entry = CycleEntry(
        id: '1',
        date: DateTime.now(),
        createdAt: DateTime.now(),
        updatedAt: DateTime.now(),
        hasHeadache: true,
      );
      expect(entry.hasSymptoms, isTrue);
    });

    test('hasSymptoms returns false when there are no symptoms', () {
      final entry = CycleEntry(
        id: '1',
        date: DateTime.now(),
        createdAt: DateTime.now(),
        updatedAt: DateTime.now(),
      );
      expect(entry.hasSymptoms, isFalse);
    });

    test('symptomCount returns the correct number of symptoms', () {
      final entry = CycleEntry(
        id: '1',
        date: DateTime.now(),
        createdAt: DateTime.now(),
        updatedAt: DateTime.now(),
        hasHeadache: true,
        hasBloating: true,
        crampIntensity: 2,
      );
      expect(entry.symptomCount, 3);
    });
  });
}
