File: example_test.go

package info (click to toggle)
golang-github-xo-dburl 0.23.7-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 212 kB
  • sloc: makefile: 2
file content (41 lines) | stat: -rw-r--r-- 722 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package passfile_test

import (
	"log"
	"os/user"

	"github.com/xo/dburl"
	"github.com/xo/dburl/passfile"
)

func Example_entries() {
	u, err := user.Current()
	if err != nil {
		log.Fatal(err)
	}
	// read ~/.usqlpass or $ENV{USQLPASS}
	entries, err := passfile.Entries(u.HomeDir, "usqlpass")
	if err != nil {
		log.Fatal(err)
	}
	for i, entry := range entries {
		log.Printf("%d: %v", i, entry)
	}
}

func Example_match() {
	v, err := user.Current()
	if err != nil {
		log.Fatal(err)
	}
	u, err := dburl.Parse("pg://")
	if err != nil {
		log.Fatal(err)
	}
	// read ~/.usqlpass or $ENV{USQLPASS}
	user, err := passfile.Match(u, v.HomeDir, "usqlpass")
	if err == nil {
		u.User = user
	}
	log.Println("url:", u.String())
}