
# # sample_data.py
# """
# Sample data to test the attribute scoring system
# """

# SAMPLE_CATEGORY_RULES = [
#     {
#         'category': 'Electronics',
#         'attribute_name': 'brand',
#         'is_mandatory': True,
#         'valid_values': ['Apple', 'Samsung', 'Sony', 'LG', 'Dell', 'HP', 'Lenovo'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Electronics',
#         'attribute_name': 'color',
#         'is_mandatory': True,
#         'valid_values': ['Black', 'White', 'Silver', 'Gray', 'Blue', 'Red', 'Gold', 'Rose Gold'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Electronics',
#         'attribute_name': 'warranty',
#         'is_mandatory': True,
#         'valid_values': ['1 Year', '2 Years', '3 Years', 'Lifetime'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Electronics',
#         'attribute_name': 'condition',
#         'is_mandatory': True,
#         'valid_values': ['New', 'Refurbished', 'Used'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Electronics',
#         'attribute_name': 'model',
#         'is_mandatory': False,
#         'valid_values': [],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Clothing',
#         'attribute_name': 'brand',
#         'is_mandatory': True,
#         'valid_values': ['Nike', 'Adidas', 'Puma', 'Reebok', 'Under Armour'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Clothing',
#         'attribute_name': 'size',
#         'is_mandatory': True,
#         'valid_values': ['XS', 'S', 'M', 'L', 'XL', 'XXL'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Clothing',
#         'attribute_name': 'color',
#         'is_mandatory': True,
#         'valid_values': ['Black', 'White', 'Blue', 'Red', 'Green', 'Yellow', 'Gray'],
#         'data_type': 'string'
#     },
#     {
#         'category': 'Clothing',
#         'attribute_name': 'material',
#         'is_mandatory': True,
#         'valid_values': ['Cotton', 'Polyester', 'Wool', 'Silk', 'Nylon', 'Blend'],
#         'data_type': 'string'
#     },
# ]

# SAMPLE_PRODUCTS = [
#     {
#         'sku': 'ELEC-001',
#         'category': 'Electronics',
#         'title': 'Apple MacBook Pro 14-inch Space Gray',
#         'description': 'Latest Apple MacBook Pro with M3 chip, 14-inch display in Space Gray color.',
#         'attributes': {
#             'brand': 'Apple',
#             'color': 'Space Gray',  # Should suggest "Gray"
#             'warranty': '1 Year',
#             'condition': 'New',
#             'model': 'MacBook Pro 14"'
#         }
#     },
#     {
#         'sku': 'ELEC-002',
#         'category': 'Electronics',
#         'title': 'Samsung Galaxy S24 Ultra',
#         'description': 'Flagship Samsung phone with advanced camera system.',
#         'attributes': {
#             'brand': 'Samsung',
#             'color': 'blak',  # Typo - should suggest "Black"
#             'warranty': 'N/A',  # Placeholder - should flag
#             'condition': 'new',  # Case mismatch - should suggest "New"
#             # Missing 'model'
#         }
#     },
#     {
#         'sku': 'ELEC-003',
#         'category': 'Electronics',
#         'title': 'Sony WH-1000XM5 Wireless Headphones',
#         'description': 'Premium noise-cancelling headphones from Sony.',
#         'attributes': {
#             # Missing 'brand' - mandatory field
#             'color': 'Black',
#             'warranty': '2 Years',
#             'condition': 'Refurbished'
#         }
#     },
#     {
#         'sku': 'CLTH-001',
#         'category': 'Clothing',
#         'title': 'Nike Dri-FIT Running T-Shirt Blue Medium',
#         'description': 'Lightweight Nike running shirt in blue color, size Medium.',
#         'attributes': {
#             'brand': 'Nike',
#             'size': 'M',
#             'color': 'Blue',
#             'material': 'Polyester'
#         }
#     },
#     {
#         'sku': 'CLTH-002',
#         'category': 'Clothing',
#         'title': 'Adidas Hoodie',
#         'description': 'Comfortable hoodie for casual wear.',
#         'attributes': {
#             'brand': 'Adiddas',  # Typo - should suggest "Adidas"
#             'size': 'Large',  # Should suggest "L"
#             'color': '',  # Empty - should flag
#             # Missing 'material' - mandatory field
#         }
#     },
# ]






# sample_data.py
"""
Sample data to test the attribute scoring system
"""

# ... SAMPLE_CATEGORY_RULES remains the same ...
SAMPLE_CATEGORY_RULES = [
    {
        'category': 'Electronics',
        'attribute_name': 'brand',
        'is_mandatory': True,
        'valid_values': ['Apple', 'Samsung', 'Sony', 'LG', 'Dell', 'HP', 'Lenovo'],
        'data_type': 'string'
    },
    {
        'category': 'Electronics',
        'attribute_name': 'color',
        'is_mandatory': True,
        'valid_values': ['Black', 'White', 'Silver', 'Gray', 'Blue', 'Red', 'Gold', 'Rose Gold'],
        'data_type': 'string'
    },
    {
        'category': 'Electronics',
        'attribute_name': 'warranty',
        'is_mandatory': True,
        'valid_values': ['1 Year', '2 Years', '3 Years', 'Lifetime'],
        'data_type': 'string'
    },
    {
        'category': 'Electronics',
        'attribute_name': 'condition',
        'is_mandatory': True,
        'valid_values': ['New', 'Refurbished', 'Used'],
        'data_type': 'string'
    },
    {
        'category': 'Electronics',
        'attribute_name': 'model',
        'is_mandatory': False,
        'valid_values': [],
        'data_type': 'string'
    },
    {
        'category': 'Clothing',
        'attribute_name': 'brand',
        'is_mandatory': True,
        'valid_values': ['Nike', 'Adidas', 'Puma', 'Reebok', 'Under Armour'],
        'data_type': 'string'
    },
    {
        'category': 'Clothing',
        'attribute_name': 'size',
        'is_mandatory': True,
        'valid_values': ['XS', 'S', 'M', 'L', 'XL', 'XXL'],
        'data_type': 'string'
    },
    {
        'category': 'Clothing',
        'attribute_name': 'color',
        'is_mandatory': True,
        'valid_values': ['Black', 'White', 'Blue', 'Red', 'Green', 'Yellow', 'Gray'],
        'data_type': 'string'
    },
    {
        'category': 'Clothing',
        'attribute_name': 'material',
        'is_mandatory': True,
        'valid_values': ['Cotton', 'Polyester', 'Wool', 'Silk', 'Nylon', 'Blend'],
        'data_type': 'string'
    },
]

# --- NEW SAMPLE CONTENT RULES ---
SAMPLE_CONTENT_RULES = [
    # Global Rules
    {
        'category': None, # Applies to all categories
        'field_name': 'description',
        'is_mandatory': True,
        'min_word_count': 200,
        'max_word_count': 500,
    },
    {
        'category': None, # Applies to all categories
        'field_name': 'title',
        'is_mandatory': True,
        'min_word_count': 40,
        'max_word_count': 100,
    },
    {
        'category': None,
        'field_name': 'seo_title',
        'is_mandatory': True,
        'min_length': 40,
        'max_length': 60,
    },
    {
        'category': None,
        'field_name': 'seo_description',
        'is_mandatory': True,
        'min_length': 120,
        'max_length': 160,
    },
    # Category-Specific Rules
    {
        'category': 'Electronics',
        'field_name': 'title',
        'is_mandatory': True,
        'min_word_count': 4,
        'must_contain_keywords': ['Apple', 'Samsung', 'Sony', 'HP'], # Must contain one of the major brands
    },
    {
        'category': 'Clothing',
        'field_name': 'title',
        'is_mandatory': True,
        'must_contain_keywords': ['T-Shirt', 'Hoodie', 'Jacket'],
    },
]

# ... SAMPLE_PRODUCTS updated with content fields ...
SAMPLE_PRODUCTS = [
    {
        'sku': 'ELEC-001',
        'category': 'Electronics',
        'title': 'Apple MacBook Pro 14-inch Space Gray', # Good title (5 words, contains "Apple")
        'description': 'Latest Apple MacBook Pro with M3 chip, 14-inch display in Space Gray color.', # 16 words - Good
        'seo_title': 'Buy Apple MacBook Pro 14-inch M3 Space Gray', # 42 chars - Good
        'seo_description': 'The ultimate laptop for professionals. Features the revolutionary M3 chip, a stunning 14-inch Liquid Retina XDR display, and all-day battery life.', # 155 chars - Good
        'attributes': {
            'brand': 'Apple',
            'color': 'Space Gray',
            'warranty': '1 Year',
            'condition': 'New',
            'model': 'MacBook Pro 14"'
        }
    },
    {
        'sku': 'ELEC-002',
        'category': 'Electronics',
        'title': 'Samsung Galaxy S24 Ultra', # Bad title (4 words, missing attribute-like details)
        'description': 'Flagship Samsung phone.', # Bad description (3 words - fails min_word_count 10)
        'seo_title': 'Samsung Galaxy S24 Ultra', # Bad SEO Title (26 chars - fails min_length 40)
        'seo_description': 'Experience the best of mobile technology.', # Bad SEO Description (45 chars - fails min_length 120)
        'attributes': {
            'brand': 'Samsung',
            'color': 'blak',
            'warranty': 'N/A',
            'condition': 'new',
        }
    },
    {
        'sku': 'ELEC-003',
        'category': 'Electronics',
        'title': 'Sony WH-1000XM5 Wireless Headphones',
        'description': 'Premium noise-cancelling headphones from Sony.', # Good description (5 words - **NOTE**: The rule is 10 words, this fails. I'm keeping it as a failure for testing.)
        'seo_title': 'Sony WH-1000XM5 Noise Cancelling Wireless Headphones', # 57 chars - Good
        'seo_description': '', # Bad (missing/empty - fails is_mandatory)
        'attributes': {
            'color': 'Black',
            'warranty': '2 Years',
            'condition': 'Refurbished'
        }
    },
    {
        'sku': 'CLTH-002',
        'category': 'Clothing',
        'title': 'Adidas Comfy Hoodie', # Good title (contains "Hoodie")
        'description': 'Comfortable hoodie for casual wear.', # Bad (4 words - fails min_word_count 10)
        'seo_title': 'Adidas Comfy Hoodie for Men and Women', # 38 chars - Bad (fails min_length 40)
        'seo_description': 'The perfect blend of style and comfort. Made from a durable cotton blend, ideal for lounging or a casual outing. Available in multiple sizes and colors.', # 160 chars - Good
        'attributes': {
            'brand': 'Adiddas',
            'size': 'Large',
            'color': '',
        }
    },
]