#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Test the time/datetime library"""

from pathlib import Path
import sys

ROOT_DIR = Path(__file__).resolve().parents[1]
LIB_DIR = ROOT_DIR / "libs"
if str(LIB_DIR) not in sys.path:
	sys.path.insert(0, str(LIB_DIR))

import เวลา

พิมพ์ = print

print("=== Testing เวลา (DateTime) Library ===\n")

# Current
print("=== Current Date/Time ===")
พิมพ์(f"เวลาปัจจุบัน: {เวลา.ตอนนี้()}")
พิมพ์(f"วันนี้: {เวลา.วันนี้()}")
พิมพ์(f"เวลาเท่านั้น: {เวลา.มะรุ่งนี้()}")
พิมพ์(f"ตามรูปแบบไทย: {เวลา.เป็นข้อความไทย(เวลา.ตอนนี้())}\n")

# Creating
print("=== Creating Dates/Times ===")
วันเกิด = เวลา.สร้างวันที่(1990, 5, 25)
พิมพ์(f"วันเกิด: {วันเกิด}")
พิมพ์(f"ชื่อวัน: {เวลา.ชื่อวันสัปดาห์(วันเกิด)}")

เวลาบ่าย3โมงครึ่ง = เวลา.สร้างเวลา(15, 30, 0)
พิมพ์(f"บ่าย 3 โมง 30 นาที: {เวลาบ่าย3โมงครึ่ง}\n")

วันเวลา = เวลา.สร้างวันเวลา(2024, 12, 25, 18, 45, 30)
พิมพ์(f"25 ธ.ค. 2024 เวลา 18:45:30: {วันเวลา}")
พิมพ์(f"เป็นข้อความ: {เวลา.เป็นข้อความ(วันเวลา)}\n")

# Parsing
print("=== Parsing Text ===")
ข้อความวันที่ = "2024-03-19"
วันที่ที่แปลง = เวลา.จากข้อความ(ข้อความวันที่, '%Y-%m-%d')
พิมพ์(f"แปลง '{ข้อความวันที่}' -> {วันที่ที่แปลง}\n")

# Manipulation
print("=== Date Manipulation ===")
วันนี้ = เวลา.วันนี้()
พรุ่งนี้ = เวลา.เพิ่มวัน(วันนี้, 1)
เมื่อสัปดาห์ที่แล้ว = เวลา.หารวัน(วันนี้, 7)

พิมพ์(f"วันนี้: {วันนี้}")
พิมพ์(f"พรุ่งนี้: {พรุ่งนี้}")
พิมพ์(f"เมื่อสัปดาห์ที่แล้ว: {เมื่อสัปดาห์ที่แล้ว}\n")

# Calculate differences
print("=== Calculate Differences ===")
วัน1 = เวลา.สร้างวันเวลา(2024, 1, 1, 10, 0, 0)
วัน2 = เวลา.สร้างวันเวลา(2024, 1, 7, 18, 30, 0)

ห่างวัน = เวลา.ห่างกี่วัน(วัน2, วัน1)
ห่างวินาที = เวลา.ห่างกี่วินาที(วัน2, วัน1)
ห่างชั่วโมง = ห่างวินาที / 3600

พิมพ์(f"วัน 1: {วัน1}")
พิมพ์(f"วัน 2: {วัน2}")
พิมพ์(f"ห่างกี่วัน: {ห่างวัน} วัน")
พิมพ์(f"ห่างกี่วินาที: {int(ห่างวินาที):,}")
พิมพ์(f"ห่างกี่ชั่วโมง: {ห่างชั่วโมง:.2f}\n")

# Calendar info
print("=== Calendar Info ===")
พิมพ์(f"จำนวนวันในกุมภาพันธ์ 2024: {เวลา.จำนวนวันในเดือน(2024, 2)}")
พิมพ์(f"2024 เป็นปีอธิกสุรทินหรือไม่: {เวลา.ปีอธิกสุรทิน(2024)}")
พิมพ์(f"จำนวนวันในกุมภาพันธ์ 2023: {เวลา.จำนวนวันในเดือน(2023, 2)}")
พิมพ์(f"2023 เป็นปีอธิกสุรทินหรือไม่: {เวลา.ปีอธิกสุรทิน(2023)}\n")

print("✓ All datetime functions working correctly!")
