feat: Add AI Refine option for Balloon tool and implement refinement process with BEN2
This commit is contained in:
@@ -801,6 +801,29 @@ class AddonTest(unittest.TestCase):
|
||||
self.addon.CLASSES.index(self.balloon.ActivateBalloonTool),
|
||||
)
|
||||
|
||||
def test_balloon_ai_refine_is_registered_and_forwarded_to_ben2(self):
|
||||
import inspect
|
||||
|
||||
self.assertIn(self.balloon.RefineBalloon, self.addon.CLASSES)
|
||||
operator = self.balloon.ExtractBalloon
|
||||
self.assertIn("ai_refine", operator.__annotations__)
|
||||
settings = self.addon.properties.SnapFormSettings.__annotations__
|
||||
self.assertIn("balloon_ai_refine", settings)
|
||||
self.assertFalse(settings["balloon_ai_refine"]["default"])
|
||||
|
||||
execute_source = inspect.getsource(operator.execute)
|
||||
invoke_source = inspect.getsource(operator.invoke)
|
||||
request_source = inspect.getsource(self.balloon.RefineBalloon.request)
|
||||
response_source = inspect.getsource(self.balloon.RefineBalloon.response)
|
||||
tool_source = inspect.getsource(self.balloon.BalloonTool.draw_settings)
|
||||
self.assertIn("bpy.ops.snapform.refine_balloon", execute_source)
|
||||
self.assertIn("prepare_image_input(", execute_source)
|
||||
self.assertIn("settings.balloon_ai_refine", invoke_source)
|
||||
self.assertIn('"polygon": polygon', request_source)
|
||||
self.assertIn('result.file("contour")', response_source)
|
||||
self.assertIn("extract_balloon_object(", response_source)
|
||||
self.assertIn('push_undo("Extract Balloon")', response_source)
|
||||
self.assertIn('"balloon_ai_refine"', tool_source)
|
||||
def test_balloon_redo_properties_use_mode_and_meter_resolution(self):
|
||||
import inspect
|
||||
|
||||
|
||||
Reference in New Issue
Block a user