mock_env_test.go 1021 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package mock_env
  2. import (
  3. "testing"
  4. "gitp78su.ipnodns.ru/svi/kern/v4/d0"
  5. )
  6. type tester struct {
  7. t *testing.T
  8. me *MockEnv
  9. owner *d0.LOwner
  10. }
  11. func TestMockEnv(t *testing.T) {
  12. sf := &tester{
  13. t: t,
  14. owner: d0.LetOwner(1, "test_mock_env"),
  15. }
  16. sf.make()
  17. sf.reset()
  18. }
  19. // Сброс переменной окружения.
  20. func (sf *tester) reset() {
  21. sf.t.Log("reset")
  22. sf.resetBad1()
  23. pwd := sf.me.Pwd()
  24. if pwd.Get() == "" {
  25. sf.t.Fatalf("reset(): pwd i empty")
  26. }
  27. }
  28. // Нет переменой окружения.
  29. func (sf *tester) resetBad1() {
  30. sf.t.Log("resetBad1")
  31. defer func() {
  32. if pan := recover(); pan == nil {
  33. sf.t.Fatalf("resetBad1(): panic=%v", pan)
  34. }
  35. }()
  36. sf.me.Reset(d0.LetTxt(""))
  37. }
  38. // Создание мок-окружения.
  39. func (sf *tester) make() {
  40. sf.t.Log("make")
  41. defer func() {
  42. if pan := recover(); pan != nil {
  43. sf.t.Fatalf("make(): panic=%v", pan)
  44. }
  45. }()
  46. env := MakeEnv(sf.owner)
  47. if env == nil {
  48. sf.t.Fatalf("make(): env==nil")
  49. }
  50. sf.me = env
  51. }