123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- package shell
- import (
- "github.com/seaweedfs/seaweedfs/weed/pb/master_pb"
- "os"
- "testing"
- )
- type testCommandVolumeCheckDisk struct {
- commandVolumeCheckDisk
- }
- type shouldSkipVolume struct {
- a VolumeReplica
- b VolumeReplica
- pulseTimeAtSecond int64
- shouldSkipVolume bool
- }
- func TestShouldSkipVolume(t *testing.T) {
- cmdVolumeCheckDisk := testCommandVolumeCheckDisk{}
- cmdVolumeCheckDisk.writer = os.Stdout
- var tests = []shouldSkipVolume{
- {
- VolumeReplica{nil, &master_pb.VolumeInformationMessage{
- FileCount: 1000,
- DeleteCount: 100,
- ModifiedAtSecond: 1696583300},
- },
- VolumeReplica{nil, &master_pb.VolumeInformationMessage{
- FileCount: 1000,
- DeleteCount: 100,
- ModifiedAtSecond: 1696583300},
- },
- 1696583400,
- true,
- },
- {
- VolumeReplica{nil, &master_pb.VolumeInformationMessage{
- FileCount: 1001,
- DeleteCount: 100,
- ModifiedAtSecond: 1696583300},
- },
- VolumeReplica{nil, &master_pb.VolumeInformationMessage{
- FileCount: 1000,
- DeleteCount: 100,
- ModifiedAtSecond: 1696583300},
- },
- 1696583400,
- false,
- },
- {
- VolumeReplica{nil, &master_pb.VolumeInformationMessage{
- FileCount: 1000,
- DeleteCount: 100,
- ModifiedAtSecond: 1696583300},
- },
- VolumeReplica{nil, &master_pb.VolumeInformationMessage{
- FileCount: 1000,
- DeleteCount: 101,
- ModifiedAtSecond: 1696583300},
- },
- 1696583400,
- false,
- },
- }
- for num, tt := range tests {
- if isShould := cmdVolumeCheckDisk.shouldSkipVolume(&tt.a, &tt.b, tt.pulseTimeAtSecond, true, true); isShould != tt.shouldSkipVolume {
- t.Fatalf("result of should skip volume is unexpected for %d test", num)
- }
- }
- }
|