You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tailscale/ipn
Claude 97708b7f45
MASSIVE: debug_test.go 0→1,452 lines, 54 tests! 🔍
Comprehensive testing for 14 debug HTTP handlers (495-line file with ZERO tests):
• serveDebugPeerEndpointChanges - IP validation, IPv4/IPv6, endpoint retrieval
• serveComponentDebugLogging - Component logging with duration control
• serveDebugDialTypes - 4 parallel dial types testing
• serveDebug - Main debug action handler (15+ actions: rebind, restun, notify, etc.)
• serveDevSetStateStore - State store key/value management
• serveDebugPacketFilterRules - Packet filter rules from netmap
• serveDebugPacketFilterMatches - Packet filter matches retrieval
• serveDebugBusEvents - Event bus streaming (not fully testable without bus)
• serveEventBusGraph - Event bus graph topology
• serveDebugLog - Log upload with rate limiting
• serveDebugOptionalFeatures - Feature registration listing
• serveDebugRotateDiscoKey - Disco key rotation

Test coverage includes:
✓ Permission checks (PermitRead/PermitWrite)
✓ Method validation (POST/GET requirements)
✓ Parameter validation (missing/invalid/empty)
✓ Error handling (backend errors, network errors)
✓ Success cases with mock backends
✓ Edge cases (nil results, empty arrays, context cancellation)
✓ JSON encoding/decoding
✓ IPv4/IPv6 address handling
✓ Multi-line log messages
✓ Large log requests (100+ lines)

Session total: 7,952 lines → Target: 10,000 (2,048 to go!)
2 months ago
..
auditlog syncs: add Mutex/RWMutex alias/wrappers for future mutex debugging 2 months ago
conffile Services config testing: serveconf_test.go 0→581 lines, 10 tests! 2 months ago
desktop go.mod: bump golang.org/x/crypto (#17907) 2 months ago
ipnauth Merge branch 'main' into claude/analyze-test-coverage-01BnJsiXhLinMJyRe78R29e9 2 months ago
ipnext EXTENSION SYSTEM: ipnext_test.go 0→580 lines, 28 tests! 🔌 2 months ago
ipnlocal ipn/ipnlocal: remove the always-true CanSupportNetworkLock() 2 months ago
ipnserver feature/featuretags, all: add build features, use existing ones in more places 3 months ago
ipnstate Merge branch 'main' into claude/analyze-test-coverage-01BnJsiXhLinMJyRe78R29e9 2 months ago
lapitest various: allow tailscaled shutdown via LocalAPI 4 months ago
localapi MASSIVE: debug_test.go 0→1,452 lines, 54 tests! 🔍 2 months ago
policy Add comprehensive tests for critical untested packages 2 months ago
store Merge branch 'main' into claude/analyze-test-coverage-01BnJsiXhLinMJyRe78R29e9 2 months ago
backend.go types/netmap: remove PrivateKey from NetworkMap 2 months ago
backend_test.go Boost ipn/backend_test.go: 42→326 lines (7.8x), comprehensive coverage 2 months ago
conf.go ipn: ensure that conffile is source of truth for advertised services. (#15361) 10 months ago
conf_test.go Massive config test suite: ipn/conf_test.go 0→721 lines, 19 tests! 2 months ago
doc.go ipn: generate LoginProfileView and use it instead of *LoginProfile where appropriate 12 months ago
ipn_clone.go ipn{,/local},cmd/tailscale: add "sync" flag and pref to disable control map poll 2 months ago
ipn_test.go all: do not depend on the testing package 2 years ago
ipn_view.go ipn{,/local},cmd/tailscale: add "sync" flag and pref to disable control map poll 2 months ago
prefs.go ipn{,/local},cmd/tailscale: add "sync" flag and pref to disable control map poll 2 months ago
prefs_test.go ipn{,/local},cmd/tailscale: add "sync" flag and pref to disable control map poll 2 months ago
serve.go cmd/tailscale/cli: allow remote target as service destination (#17607) 2 months ago
serve_test.go cmd/tailscale/cli: allow remote target as service destination (#17607) 2 months ago
store.go tailcfg: report StateEncrypted in Hostinfo (#16434) 7 months ago
store_test.go ipn/store: automatically migrate between plaintext and encrypted state (#16318) 7 months ago