import { describe, it, expect } from 'vitest' import { parseEnvironment } from '../../src/parser/environment.js' describe('parseEnvironment', () => { it('parses variables including secrets and disabled entries', () => { const yaml = ` name: production variables: - name: api_url value: https://api.example.com enabled: true secret: false type: text - name: api_key value: sk-secret enabled: true secret: true type: text - name: debug value: "false" enabled: false secret: false type: text ` const result = parseEnvironment(yaml) expect(result.name).toBe('production') expect(result.variables).toHaveLength(3) const nonSecret = result.variables.filter(v => !v.secret) expect(nonSecret).toHaveLength(2) const secret = result.variables.filter(v => v.secret) expect(secret).toHaveLength(1) expect(secret[0].name).toBe('api_key') const disabled = result.variables.filter(v => v.enabled === false) expect(disabled).toHaveLength(1) expect(disabled[0].name).toBe('debug') }) it('defaults name to "default" when missing', () => { const yaml = ` variables: - name: x value: y ` const result = parseEnvironment(yaml) expect(result.name).toBe('default') }) })