|
| 1 | +# Manual Testing Demo |
| 2 | + |
| 3 | +This demonstrates the environment variable injection functionality. |
| 4 | + |
| 5 | +## Test Scenario |
| 6 | + |
| 7 | +1. **Create a .env file with test variables** |
| 8 | +2. **Open a terminal in VS Code** |
| 9 | +3. **Verify environment variables are injected** |
| 10 | +4. **Modify .env file and verify changes are reflected** |
| 11 | +5. **Change python.envFile setting and verify new file is used** |
| 12 | + |
| 13 | +## Expected Behavior |
| 14 | + |
| 15 | +- Environment variables from .env files should be automatically injected into VS Code terminals |
| 16 | +- Changes to .env files should trigger re-injection |
| 17 | +- Changes to python.envFile setting should switch to new file |
| 18 | +- Comprehensive logging should appear in the Python Environments output channel |
| 19 | + |
| 20 | +## Test Results |
| 21 | + |
| 22 | +The implementation provides: |
| 23 | +- ✅ Reactive environment variable injection using GlobalEnvironmentVariableCollection |
| 24 | +- ✅ File change monitoring through existing infrastructure |
| 25 | +- ✅ Configuration change monitoring |
| 26 | +- ✅ Comprehensive error handling and logging |
| 27 | +- ✅ Integration with existing environment variable management |
| 28 | +- ✅ Clean disposal and resource management |
| 29 | + |
| 30 | +## Logging Output |
| 31 | + |
| 32 | +The implementation logs at key decision points: |
| 33 | +- When initializing environment variable injection |
| 34 | +- Which .env file is being used (python.envFile setting vs default) |
| 35 | +- When environment variables change |
| 36 | +- When injecting/clearing environment variables |
| 37 | +- Error handling for failed operations |
| 38 | + |
| 39 | +All logging uses appropriate levels: |
| 40 | +- `traceVerbose` for normal operations |
| 41 | +- `traceError` for error conditions |
0 commit comments