""" Test script to verify NXOpen Python intellisense is working with stub files. ⚠️ IMPORTANT: This file is NOT meant to be executed! NXOpen modules can only run inside an NX session. This file is for testing VSCode intellisense/autocomplete only. How to use: 1. Open this file in VSCode 2. Test autocomplete by typing the examples below 3. Verify you see suggestions, type hints, and documentation Setup Required: - VSCode with Pylance extension installed - .vscode/settings.json configured with stub path: "python.analysis.stubPath": "C:\\Program Files\\Siemens\\NX2412\\UGOPEN\\pythonStubs" - Python 3.11 environment (atomizer) DO NOT RUN: python test_nxopen_intellisense.py (NXOpen requires NX to be running) """ import sys print("⚠️ This file is for intellisense testing only!") print("⚠️ NXOpen modules require NX to be running.") print("⚠️ Use this file in VSCode to test autocomplete, not execution.") print("\nTo test intellisense:") print("1. Open this file in VSCode") print("2. Type 'import NXOpen.' and see autocomplete suggestions") print("3. Uncomment the test code below and test autocomplete") sys.exit(0) # ============================================================================ # INTELLISENSE TEST CODE (Uncomment to test autocomplete in VSCode) # ============================================================================ # Test 1: Import autocomplete # Type "import NXOpen." and verify you see module suggestions: # NXOpen.Part, NXOpen.Session, NXOpen.CAE, NXOpen.Assemblies, etc. # import NXOpen # import NXOpen.Part # import NXOpen.Session # import NXOpen.CAE # import NXOpen.Assemblies # Test 2: Session object autocomplete # Type "session." and verify you see methods like GetSession(), Parts, etc. # session = NXOpen.Session.GetSession() # Test 3: Part methods autocomplete # Type "work_part." and verify you see methods # work_part = session.Parts.Work # Test 4: Expression methods autocomplete # Type "expressions." and verify you see methods like FindObject, CreateExpression, etc. # if work_part: # expressions = work_part.Expressions # # Type "expressions." and verify methods appear: # # expressions.FindObject, CreateExpression, EditWithUnits, etc. # # Test 5: Parameter type hints # # Hover over CreateExpression and verify you see parameter types # # expression = expressions.CreateExpression("test", "1.0") # Test 6: CAE autocomplete # Type "fem_part." and verify CAE-specific methods appear # fem_part = NXOpen.CAE.FemPart # Type "fem_part." to see: BaseFemPart, FemModel, etc. # Test 7: Assembly autocomplete # Type "assemblies." and verify assembly methods appear # work_part = None # Would come from session # assemblies = work_part.ComponentAssembly if work_part else None # Type "assemblies." to see: AddComponent, CreateComponent, etc. # Test 8: Documentation tooltips # Hover over any NXOpen class/method and verify documentation appears # Example: Hover over "GetSession()" - should show docstring