package safestring

import (
	"testing"
)

/*
	Тест для безопасной строки
*/

// Тестер для безопасной строки
type tester struct {
	t  *testing.T
	si *SafeString
}

func TestSafeString(t *testing.T) {
	test := &tester{
		t: t,
	}
	test.create()
	test.set()
}

// Установка значения
func (sf *tester) set() {
	sf.t.Logf("=set=\n")
	sf.si.Set("test_str")
	if val := sf.si.Get(); val != "test_str" {
		sf.t.Errorf("create(): val(%s)!='test_str'\n", val)
	}
}

// Создание целого
func (sf *tester) create() {
	sf.t.Logf("=create=\n")
	sf.si = NewSafeString()
	if sf.si == nil {
		sf.t.Errorf("create(): safeString==nil\n")
	}
	if val := sf.si.Get(); val != "" {
		sf.t.Errorf("create(): val(%s)!=``\n", val)
	}
}
