remote_test.go 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package remote
  2. import (
  3. "fmt"
  4. "testing"
  5. )
  6. func NewSSHClientTest() (*SSHClient, error) {
  7. sshClient, err := NewSSHClient("1", "gtong", "845895", "127.0.0.1", "22")
  8. if err != nil {
  9. fmt.Errorf("NewSSHClient failed: %v", err)
  10. return nil, err
  11. }
  12. //sshClient.Close()
  13. return sshClient, nil
  14. }
  15. func TestRunCommand(t *testing.T) {
  16. sshClient, err := NewSSHClientTest()
  17. if err != nil {
  18. t.Errorf("NewSSHClientTest failed: %v\n", err)
  19. return
  20. }
  21. str, err := sshClient.RunCommand("ls -l")
  22. if err != nil {
  23. t.Errorf("RunCommand failed: %v\n", err)
  24. return
  25. }
  26. fmt.Println("str: ", str)
  27. }
  28. func TestSystemInfo(t *testing.T) {
  29. sshClient, err := NewSSHClientTest()
  30. if err != nil {
  31. t.Errorf("NewSSHClientTest failed: %v\n", err)
  32. return
  33. }
  34. defer sshClient.Close()
  35. commands := map[string]string{
  36. "OS Info": "cat /etc/os-release",
  37. "CPU Info": "lscpu",
  38. "Memory Info": "free -h",
  39. "Disk Info": "df -h",
  40. "Network Info": "ip addr",
  41. }
  42. for name, cmd := range commands {
  43. output, err := sshClient.RunCommand(cmd)
  44. if err != nil {
  45. t.Errorf("%s command failed: %v\n", name, err)
  46. continue
  47. }
  48. fmt.Printf("%s:\n%s\n", name, output)
  49. }
  50. }