import unittest from hindenburg_api.project import Project class TestProject(unittest.TestCase): def setUp(self): self.project = Project("path/to/demo.nhsx") def test_load_project(self): self.project.load() self.assertIsNotNone(self.project.audio_pool) self.assertGreater(len(self.project.tracks), 0) def test_save_project(self): self.project.load() self.project.save("path/to/save/demo.nhsx") # Verify that the file exists and is not empty self.assertTrue(os.path.exists("path/to/save/demo.nhsx")) self.assertGreater(os.path.getsize("path/to/save/demo.nhsx"), 0) def test_modify_clip_color(self): self.project.load() original_color = self.project.tracks[0].regions[0].color new_color = "red" self.project.modify_clip_color(0, new_color) self.assertNotEqual(original_color, self.project.tracks[0].regions[0].color) self.assertEqual(self.project.tracks[0].regions[0].color, new_color) if __name__ == '__main__': unittest.main()