raid_test.go 903 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package raid_test
  2. import (
  3. "fmt"
  4. "testing"
  5. "imuslab.com/arozos/mod/disk/raid"
  6. )
  7. func TestCreateRAIDDevice(t *testing.T) {
  8. //Create an empty Manager
  9. manager, _ := raid.NewRaidManager(raid.Options{})
  10. // Make sure the sdb and sdc exists when running test case in VM
  11. devName, _ := raid.GetNextAvailableMDDevice()
  12. raidLevel := 1
  13. raidDeviceIds := []string{"/dev/sdb", "/dev/sdc"}
  14. spareDeviceIds := []string{}
  15. //Format the drives
  16. for _, partion := range raidDeviceIds {
  17. fmt.Println("Wiping partition: " + partion)
  18. err := manager.WipeDisk(partion)
  19. if err != nil {
  20. t.Errorf("Disk wipe error: %v", err)
  21. return
  22. }
  23. }
  24. // Call the function being tested
  25. err := manager.CreateRAIDDevice(devName, raidLevel, raidDeviceIds, spareDeviceIds)
  26. if err != nil {
  27. t.Errorf("Unexpected error: %v", err)
  28. return
  29. }
  30. fmt.Println("RAID array created")
  31. }