diff options
| author | 2026-03-09 23:05:42 +0300 | |
|---|---|---|
| committer | 2026-03-09 23:05:42 +0300 | |
| commit | 00394a80501960ad26787b5c44435ed5ed67ad84 (patch) | |
| tree | 672eb918c552c858f32e9533dc3799af6b75769f /loader_test.go | |
| parent | '-' sign in words accepted (diff) | |
| download | conf-0.1.0.tar.gz conf-0.1.0.tar.bz2 conf-0.1.0.tar.xz conf-0.1.0.zip | |
Полностью переписал библиотеку. Перевёл с EBNF на PEG.v0.1.0
Diffstat (limited to '')
| -rw-r--r-- | loader_test.go | 64 |
1 files changed, 27 insertions, 37 deletions
diff --git a/loader_test.go b/loader_test.go index 3e16922..3c9a84a 100644 --- a/loader_test.go +++ b/loader_test.go @@ -2,50 +2,40 @@ package conf_test import ( "fmt" + "log" "go.neonxp.ru/conf" - "go.neonxp.ru/conf/visitor" ) -func ExampleNew() { - config := ` - key = "value"; - group "test" { - key = 123; +func ExampleLoad() { + test := ` + some directive; + group1 param1 { + group2 param2 { + group3 param3 { + key value; + } + } } ` - - cfg := conf.New() - - if err := cfg.Load("example", []byte(config)); err != nil { - panic(err) - } - - pr := visitor.NewDefault() - if err := cfg.Process(pr); err != nil { - panic(err) - } - - val1, err := pr.Get("key") + result, err := conf.Load("test", []byte(test)) if err != nil { - panic(err) + log.Fatal(err) } - val2, err := pr.Get("group.key") - if err != nil { - panic(err) - } - - val3, err := pr.Get("group") - if err != nil { - panic(err) - } - - fmt.Println("key =", val1.String()) - fmt.Println("group.key =", val2.String()) - fmt.Println("group args =", val3.String()) - // Output: - // key = value - // group.key = 123 - // group args = test + fmt.Println( + result.Get("group1"). + Group.Get("group2"). + Group.Get("group3"). + Group.Get("key").Value(), + ) // → value + + fmt.Println( + result.Get("group1"). + Group.Get("group2"). + Group.Get("group3").Value(), + ) // → param3 + + // Output: value + // param3 } |
