github.com/daidehu6831/wails/v2@v2.2.0/pkg/menu/keys/macmodifiers_test.go (about)

     1  package keys
     2  
     3  import "testing"
     4  
     5  func TestToMacModifier(t *testing.T) {
     6  
     7  	tests := []struct {
     8  		name        string
     9  		accelerator *Accelerator
    10  		want        int
    11  	}{
    12  		// TODO: Add test cases.
    13  		{"nil", nil, 0},
    14  		{"empty", &Accelerator{}, 0},
    15  		{"key", &Accelerator{Key: "p"}, 0},
    16  		{"cmd", CmdOrCtrl(""), NSEventModifierFlagCommand},
    17  		{"ctrl", Control(""), NSEventModifierFlagControl},
    18  		{"shift", Shift(""), NSEventModifierFlagShift},
    19  		{"option", OptionOrAlt(""), NSEventModifierFlagOption},
    20  		{"cmd+ctrl", Combo("", CmdOrCtrlKey, ControlKey), NSEventModifierFlagCommand | NSEventModifierFlagControl},
    21  		{"cmd+ctrl+shift", Combo("", CmdOrCtrlKey, ControlKey, ShiftKey), NSEventModifierFlagCommand | NSEventModifierFlagControl | NSEventModifierFlagShift},
    22  		{"cmd+ctrl+shift+option", Combo("", CmdOrCtrlKey, ControlKey, ShiftKey, OptionOrAltKey), NSEventModifierFlagCommand | NSEventModifierFlagControl | NSEventModifierFlagShift | NSEventModifierFlagOption},
    23  	}
    24  	for _, tt := range tests {
    25  		t.Run(tt.name, func(t *testing.T) {
    26  			if got := ToMacModifier(tt.accelerator); got != tt.want {
    27  				t.Errorf("ToMacModifier() = %v, want %v", got, tt.want)
    28  			}
    29  		})
    30  	}
    31  }