Spaces:
Running on CPU Upgrade
Running on CPU Upgrade
| from app.services.encoding_service import encoder | |
| def test_text_to_vector_basic(): | |
| text = "ผู้ชาย วัยรุ่น ผมดำ" | |
| vector = encoder.text_to_vector(text) | |
| # Check if gender 'ชาย' is set (index 6, 7 in total feature names) | |
| # feature_names order: age_cats(6), gender_cats(2), ... | |
| # gender_categories = ["หญิง", "ชาย"] | |
| # So 'ชาย' should be index 6 + 1 = 7 | |
| assert vector[7] == 1 | |
| assert vector[6] == 0 | |
| def test_vector_to_text(): | |
| # Create a vector for a young female with black hair | |
| vector = [0] * 25 | |
| vector[2] = 1 # วัยรุ่น | |
| vector[6] = 1 # หญิง | |
| vector[10] = 1 # ผมดำ | |
| vector[11] = 1 # ผมตรง | |
| vector[13] = 1 # คิ้วหนา | |
| vector[17] = 1 # ผิวขาว | |
| text_list = encoder.vector_to_text(vector) | |
| assert "หญิง" in text_list | |
| assert "วัยรุ่น" in text_list | |
| assert "ผมดำ" in text_list | |
| def test_parse_text_complex(): | |
| text = "ผู้หญิง วัยรุ่น ผมตรง คิ้วหนา ผิวสองสี" | |
| parsed = encoder.parse_text(text) | |
| assert parsed["gender"] == "หญิง" | |
| assert parsed["age"] == "วัยรุ่น" | |
| assert "คิ้วหนา" in parsed["eyebrow"] | |
| assert parsed["skin"] == "ผิวสองสี" | |