text: import { NotImplementedError } from '../extensions/index.js';
  
  /**
   * Extract season from given date and expose the enemy scout!
   * 
   * @param {Date | FakeDate} date real or fake date
   * @returns {String} time of the year
   * 
   * @example
   * 
   * getSeason(new Date(2020, 02, 31)) => 'spring'
   * 
   */
  export default function getSeason(date) {
    if (!date) return 'Unable to determine the time of year!';
    if (!(date instanceof Date)) throw new Error('Invalid date!');
    try {
      date.getTime();
    } catch (err) {
      throw new Error('Invalid date!');
    }
    let month = date.getMonth();
    if (month === 11 || month < 2) return "winter";
    if (month < 5) return "spring";
    if (month < 8) return "summer";
    return "autumn";
  }
  