# Path: praatio/utilities/constants.py
# INTERVAL_TIER: Final = "IntervalTier"
# POINT_TIER: Final = "TextTier"
# MIN_INTERVAL_LENGTH: Final = 0.00000001  # Arbitrary threshold
#     LONG_TEXTGRID: Final = "long_textgrid"
#     SHORT_TEXTGRID: Final = "short_textgrid"
#     JSON: Final = "json"
#     POINT: Final = "PointProcess"
#     PITCH: Final = "PitchTier"
#     DURATION: Final = "DurationTier"
#     STRICT: Final = "strict"
#     LAX: Final = "lax"
#     TRUNCATED: Final = "truncated"
#     SILENCE: Final = "silence"
#     WARNING: Final = "warning"
#     ERROR: Final = "error"
#     REPLACE: Final = "replace"
#     MERGE: Final = "merge"
#     ERROR: Final = "error"
#     STRETCH: Final = "stretch"
#     SPLIT: Final = "split"
#     NO_CHANGE: Final = "no_change"
#     ERROR: Final = "error"
#     TRUNCATE: Final = "truncate"
#     CATEGORICAL: Final = "categorical"
#     ERROR: Final = "error"
#     ERROR: Final = "error"
#     RENAME: Final = "rename"
# class Interval(namedtuple("Interval", ["start", "end", "label"])):
# class Point(namedtuple("Point", ["time", "label"])):
# class TextgridFormats:
# class DataPointTypes:
# class CropCollision:
# class ErrorReportingMode:
# class IntervalCollision:
# class WhitespaceCollision:
# class EraseCollision:
# class DuplicateNames:
#     def __eq__(self, other):
#     def __ne__(self, other):
#     def __eq__(self, other):
#     def __ne__(self, other):
# 
# Path: tests/praatio_test_case.py
# class PraatioTestCase(unittest.TestCase):
#     def __init__(self, *args, **kargs):
#         super(PraatioTestCase, self).__init__(*args, **kargs)
# 
#         root = os.path.dirname(os.path.realpath(__file__))
#         self.dataRoot = os.path.join(root, "files")
#         self.outputRoot = os.path.join(self.dataRoot, "test_output")
# 
#     def setUp(self):
#         if not os.path.exists(self.outputRoot):
#             os.mkdir(self.outputRoot)
# 
#     def assertAllAlmostEqual(self, listA, listB):
#         for valA, valB in zip(listA, listB):
#             self.assertAlmostEqual(valA, valB)


import unittest
from praatio.utilities import constants
from tests.praatio_test_case import PraatioTestCase

        self.assertEqual("hello", sut[2])
        self.assertEqual("hello", sut.label)

    def test_interval_equivalence(self):
        self.assertEqual(
            constants.Interval(0.5555555556, 1.0, "hello"),
            constants.Interval(5 / 9.0, 1.0, "hello"),
        )
        self.assertNotEqual(
            constants.Interval(5 / 9.0, 1.0, "hello"), (0.5555555556, 1.0, "hello")
        )
        self.assertNotEqual(constants.Interval(5 / 9.0, 1.0, "hello"), "hello")

    def test_point_as_named_tuple(self):
        sut = constants.Point(0.5, "hello")

        self.assertEqual(0.5, sut[0])
        self.assertEqual(0.5, sut.time)

        self.assertEqual("hello", sut[1])
        self.assertEqual("hello", sut.label)

    def test_point_equivalence(self):
        self.assertEqual(
            constants.Point(0.5555555556, "hello"),
            constants.Point(5 / 9.0, "hello"),
        )

        self.assertNotEqual(constants.Point(5 / 9.0, "hello"), (5 / 9.0, "hello"))

# Path: praatio/utilities/constants.py
# INTERVAL_TIER: Final = "IntervalTier"
# POINT_TIER: Final = "TextTier"
# MIN_INTERVAL_LENGTH: Final = 0.00000001  # Arbitrary threshold
#     LONG_TEXTGRID: Final = "long_textgrid"
#     SHORT_TEXTGRID: Final = "short_textgrid"
#     JSON: Final = "json"
#     POINT: Final = "PointProcess"
#     PITCH: Final = "PitchTier"
#     DURATION: Final = "DurationTier"
#     STRICT: Final = "strict"
#     LAX: Final = "lax"
#     TRUNCATED: Final = "truncated"
#     SILENCE: Final = "silence"
#     WARNING: Final = "warning"
#     ERROR: Final = "error"
#     REPLACE: Final = "replace"
#     MERGE: Final = "merge"
#     ERROR: Final = "error"
#     STRETCH: Final = "stretch"
#     SPLIT: Final = "split"
#     NO_CHANGE: Final = "no_change"
#     ERROR: Final = "error"
#     TRUNCATE: Final = "truncate"
#     CATEGORICAL: Final = "categorical"
#     ERROR: Final = "error"
#     ERROR: Final = "error"
#     RENAME: Final = "rename"
# class Interval(namedtuple("Interval", ["start", "end", "label"])):
# class Point(namedtuple("Point", ["time", "label"])):
# class TextgridFormats:
# class DataPointTypes:
# class CropCollision:
# class ErrorReportingMode:
# class IntervalCollision:
# class WhitespaceCollision:
# class EraseCollision:
# class DuplicateNames:
#     def __eq__(self, other):
#     def __ne__(self, other):
#     def __eq__(self, other):
#     def __ne__(self, other):
# 
# Path: tests/praatio_test_case.py
# class PraatioTestCase(unittest.TestCase):
#     def __init__(self, *args, **kargs):
#         super(PraatioTestCase, self).__init__(*args, **kargs)
# 
#         root = os.path.dirname(os.path.realpath(__file__))
#         self.dataRoot = os.path.join(root, "files")
#         self.outputRoot = os.path.join(self.dataRoot, "test_output")
# 
#     def setUp(self):
#         if not os.path.exists(self.outputRoot):
#             os.mkdir(self.outputRoot)
# 
#     def assertAllAlmostEqual(self, listA, listB):
#         for valA, valB in zip(listA, listB):
#             self.assertAlmostEqual(valA, valB)


# Path: tests/utilities/test_constants.py
import unittest
from praatio.utilities import constants
from tests.praatio_test_case import PraatioTestCase


        self.assertEqual("hello", sut[2])
        self.assertEqual("hello", sut.label)

    def test_interval_equivalence(self):
        self.assertEqual(
            constants.Interval(0.5555555556, 1.0, "hello"),
            constants.Interval(5 / 9.0, 1.0, "hello"),
        )
        self.assertNotEqual(
            constants.Interval(5 / 9.0, 1.0, "hello"), (0.5555555556, 1.0, "hello")
        )
        self.assertNotEqual(constants.Interval(5 / 9.0, 1.0, "hello"), "hello")

    def test_point_as_named_tuple(self):
        sut = constants.Point(0.5, "hello")

        self.assertEqual(0.5, sut[0])
        self.assertEqual(0.5, sut.time)

        self.assertEqual("hello", sut[1])
        self.assertEqual("hello", sut.label)

    def test_point_equivalence(self):
        self.assertEqual(
            constants.Point(0.5555555556, "hello"),
            constants.Point(5 / 9.0, "hello"),
        )

        self.assertNotEqual(constants.Point(5 / 9.0, "hello"), (5 / 9.0, "hello"))

        self.assertNotEqual(constants.Point(5 / 9.0, "hello"), "hello")