import { describe, it, expect } from 'vitest';
import { getTimeAwarenessDirective } from '../../../src/events/conversations/ai_response.js';

describe('Time Awareness', () => {
  it('should return morning directive for 6am-11am', () => {
    const result = getTimeAwarenessDirective(8, 50, ['friend']);
    expect(result).toContain('morning');
  });

  it('should return afternoon directive for 11am-5pm', () => {
    const result = getTimeAwarenessDirective(14, 50, ['friend']);
    expect(result).toContain('middle of the day');
  });

  it('should return evening directive for 5pm-10pm', () => {
    const result = getTimeAwarenessDirective(19, 50, ['friend']);
    expect(result).toContain('evening');
  });

  it('should allow close relationships late at night', () => {
    const result = getTimeAwarenessDirective(23, 80, ['girlfriend']);
    expect(result).toContain('close');
  });

  it('should flag distant relationships texting late', () => {
    const result = getTimeAwarenessDirective(23, 20, ['acquaintance']);
    expect(result).toContain('late');
  });

  it('should flag deep night for non-close relationships', () => {
    const result = getTimeAwarenessDirective(3, 30, ['classmate']);
    expect(result).toContain('middle of the night');
  });

  it('should allow deep night for partners', () => {
    const result = getTimeAwarenessDirective(3, 80, ['spouse']);
    expect(result).not.toContain('confused');
  });
});
