code.gitea.io/gitea@v1.22.3/modules/structs/commit_status_test.go (about) 1 // Copyright 2023 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package structs 5 6 import ( 7 "testing" 8 ) 9 10 func TestNoBetterThan(t *testing.T) { 11 type args struct { 12 css CommitStatusState 13 css2 CommitStatusState 14 } 15 var unExpectedState CommitStatusState 16 tests := []struct { 17 name string 18 args args 19 want bool 20 }{ 21 { 22 name: "success is no better than success", 23 args: args{ 24 css: CommitStatusSuccess, 25 css2: CommitStatusSuccess, 26 }, 27 want: true, 28 }, 29 { 30 name: "success is no better than pending", 31 args: args{ 32 css: CommitStatusSuccess, 33 css2: CommitStatusPending, 34 }, 35 want: false, 36 }, 37 { 38 name: "success is no better than failure", 39 args: args{ 40 css: CommitStatusSuccess, 41 css2: CommitStatusFailure, 42 }, 43 want: false, 44 }, 45 { 46 name: "success is no better than error", 47 args: args{ 48 css: CommitStatusSuccess, 49 css2: CommitStatusError, 50 }, 51 want: false, 52 }, 53 { 54 name: "pending is no better than success", 55 args: args{ 56 css: CommitStatusPending, 57 css2: CommitStatusSuccess, 58 }, 59 want: true, 60 }, 61 { 62 name: "pending is no better than pending", 63 args: args{ 64 css: CommitStatusPending, 65 css2: CommitStatusPending, 66 }, 67 want: true, 68 }, 69 { 70 name: "pending is no better than failure", 71 args: args{ 72 css: CommitStatusPending, 73 css2: CommitStatusFailure, 74 }, 75 want: false, 76 }, 77 { 78 name: "pending is no better than error", 79 args: args{ 80 css: CommitStatusPending, 81 css2: CommitStatusError, 82 }, 83 want: false, 84 }, 85 { 86 name: "failure is no better than success", 87 args: args{ 88 css: CommitStatusFailure, 89 css2: CommitStatusSuccess, 90 }, 91 want: true, 92 }, 93 { 94 name: "failure is no better than pending", 95 args: args{ 96 css: CommitStatusFailure, 97 css2: CommitStatusPending, 98 }, 99 want: true, 100 }, 101 { 102 name: "failure is no better than failure", 103 args: args{ 104 css: CommitStatusFailure, 105 css2: CommitStatusFailure, 106 }, 107 want: true, 108 }, 109 { 110 name: "failure is no better than error", 111 args: args{ 112 css: CommitStatusFailure, 113 css2: CommitStatusError, 114 }, 115 want: false, 116 }, 117 { 118 name: "error is no better than success", 119 args: args{ 120 css: CommitStatusError, 121 css2: CommitStatusSuccess, 122 }, 123 want: true, 124 }, 125 { 126 name: "error is no better than pending", 127 args: args{ 128 css: CommitStatusError, 129 css2: CommitStatusPending, 130 }, 131 want: true, 132 }, 133 { 134 name: "error is no better than failure", 135 args: args{ 136 css: CommitStatusError, 137 css2: CommitStatusFailure, 138 }, 139 want: true, 140 }, 141 { 142 name: "error is no better than error", 143 args: args{ 144 css: CommitStatusError, 145 css2: CommitStatusError, 146 }, 147 want: true, 148 }, 149 { 150 name: "unExpectedState is no better than success", 151 args: args{ 152 css: unExpectedState, 153 css2: CommitStatusSuccess, 154 }, 155 want: false, 156 }, 157 { 158 name: "unExpectedState is no better than unExpectedState", 159 args: args{ 160 css: unExpectedState, 161 css2: unExpectedState, 162 }, 163 want: false, 164 }, 165 } 166 for _, tt := range tests { 167 t.Run(tt.name, func(t *testing.T) { 168 result := tt.args.css.NoBetterThan(tt.args.css2) 169 if result != tt.want { 170 t.Errorf("NoBetterThan() = %v, want %v", result, tt.want) 171 } 172 }) 173 } 174 }