57 lines
1.8 KiB
Python
57 lines
1.8 KiB
Python
"""
|
|
Tests for data models
|
|
"""
|
|
|
|
import unittest
|
|
from models import TranslationItem, TranslationBatch
|
|
|
|
|
|
class TestTranslationItem(unittest.TestCase):
|
|
"""Test cases for TranslationItem model"""
|
|
|
|
def test_translation_item_creation(self):
|
|
"""Test creating a TranslationItem"""
|
|
item = TranslationItem(name="test_key", value="Test value")
|
|
self.assertEqual(item.name, "test_key")
|
|
self.assertEqual(item.value, "Test value")
|
|
self.assertIsNone(item.comment)
|
|
|
|
def test_translation_item_with_comment(self):
|
|
"""Test creating a TranslationItem with comment"""
|
|
item = TranslationItem(
|
|
name="test_key",
|
|
value="Test value",
|
|
comment="Test comment"
|
|
)
|
|
self.assertEqual(item.name, "test_key")
|
|
self.assertEqual(item.value, "Test value")
|
|
self.assertEqual(item.comment, "Test comment")
|
|
|
|
|
|
class TestTranslationBatch(unittest.TestCase):
|
|
"""Test cases for TranslationBatch model"""
|
|
|
|
def setUp(self):
|
|
"""Set up test fixtures"""
|
|
self.items = [
|
|
TranslationItem(name="key1", value="Value 1"),
|
|
TranslationItem(name="key2", value="Value 2")
|
|
]
|
|
|
|
def test_translation_batch_creation(self):
|
|
"""Test creating a TranslationBatch"""
|
|
batch = TranslationBatch(
|
|
items=self.items,
|
|
target_language="values-de-rDE",
|
|
target_file="strings.xml"
|
|
)
|
|
self.assertEqual(len(batch.items), 2)
|
|
self.assertEqual(batch.target_language, "values-de-rDE")
|
|
self.assertEqual(batch.target_file, "strings.xml")
|
|
self.assertEqual(batch.items[0].name, "key1")
|
|
self.assertEqual(batch.items[1].value, "Value 2")
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|