| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109 |
- package safe_string
- import (
- "os"
- "testing"
- . "gitp78su.ipnodns.ru/svi/kern/v4/lev0/ktypes"
- )
- type tester struct {
- t *testing.T
- ss ISafeString
- }
- func TestSafeString(t *testing.T) {
- sf := &tester{
- t: t,
- }
- sf.new()
- sf.set()
- sf.reset()
- sf.newFromEnv()
- }
- // Булево из окружения.
- func (sf *tester) newFromEnv() {
- sf.t.Log("newFromEnv")
- sf.newFromEnvBad1()
- sf.newFromEnvGood1()
- sf.newFromEnvGood2()
- }
- func (sf *tester) newFromEnvGood2() {
- sf.t.Log("newFromEnvGood2")
- _ = os.Unsetenv("TEST_BOOL")
- _ = os.Setenv("TEST_BOOL", "false")
- res := NewSafeStringGetenv("TEST_BOOL")
- if res.IsErr() {
- sf.t.Fatalf("newFromEnvGood2(): err=%v", res.Err())
- }
- sb := res.Val()
- if val := sb.Get(); val != "false" {
- sf.t.Fatalf("newFromEnvGood2(): val==true")
- }
- }
- func (sf *tester) newFromEnvGood1() {
- sf.t.Log("newFromEnvGood1")
- _ = os.Unsetenv("TEST_BOOL")
- _ = os.Setenv("TEST_BOOL", "true")
- res := NewSafeStringGetenv("TEST_BOOL")
- if res.IsErr() {
- sf.t.Fatalf("newFromEnvGood1(): err=%v", res.Err())
- }
- sb := res.Val()
- if val := sb.Get(); val != "true" {
- sf.t.Fatalf("newFromEnvGood1(): val==false")
- }
- }
- // Кривое булево значение.
- func (sf *tester) newFromEnvBad1() {
- sf.t.Log("newFromEnvBad1")
- _ = os.Unsetenv("TEST_BOOL")
- _ = os.Setenv("TEST_BOOL", "")
- res := NewSafeStringGetenv("TEST_BOOL")
- if res.IsOk() {
- sf.t.Fatalf("newFromEnvBad1(): err==nil")
- }
- }
- // Сбрасывает хранимое значение.
- func (sf *tester) reset() {
- sf.t.Log("reset")
- sf.ss.Reset()
- if sf.ss.Get() != "" {
- sf.t.Fatalf("reset(): ISafeString!=''")
- }
- sf.ss.Reset()
- if sf.ss.Get() != "" {
- sf.t.Fatalf("reset(): ISafeString!=''")
- }
- _ = sf.ss.Byte()
- }
- // Установка хранимого значения.
- func (sf *tester) set() {
- sf.t.Log("set")
- sf.ss.Set("77")
- if sf.ss.Get() != "77" {
- sf.t.Fatalf("set(): ISafeString!='77'")
- }
- sf.ss.Set("-56")
- if sf.ss.Get() != "-56" {
- sf.t.Fatalf("set(): ISafeString!='-56'")
- }
- }
- // Создаёт потокобезопасный булевый признак.
- func (sf *tester) new() {
- sf.t.Log("new")
- sf.ss = NewSafeString()
- if sf.ss == nil {
- sf.t.Fatalf("new(): ISafeString==nil")
- }
- if sf.ss.Get() != "" {
- sf.t.Fatalf("new(): ISafeString!=''")
- }
- }
|