Browse code

fix(QF1003): Convert if/else-if chain to tagged switch

Signed-off-by: Matthieu MOREL <matthieu.morel35@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>

Matthieu MOREL authored on 2025/04/27 16:05:09
Showing 7 changed files
... ...
@@ -60,9 +60,10 @@ func normalizeDest(workingDir, requested string) (string, error) {
60 60
 func containsWildcards(name string) bool {
61 61
 	for i := 0; i < len(name); i++ {
62 62
 		ch := name[i]
63
-		if ch == '\\' {
63
+		switch ch {
64
+		case '\\':
64 65
 			i++
65
-		} else if ch == '*' || ch == '?' || ch == '[' {
66
+		case '*', '?', '[':
66 67
 			return true
67 68
 		}
68 69
 	}
... ...
@@ -556,9 +556,10 @@ func (r *controller) Logs(ctx context.Context, publisher exec.LogPublisher, opti
556 556
 			return errors.Wrap(err, "failed to convert timestamp")
557 557
 		}
558 558
 		var stream api.LogStream
559
-		if msg.Source == "stdout" {
559
+		switch msg.Source {
560
+		case "stdout":
560 561
 			stream = api.LogStreamStdout
561
-		} else if msg.Source == "stderr" {
562
+		case "stderr":
562 563
 			stream = api.LogStreamStderr
563 564
 		}
564 565
 
... ...
@@ -188,7 +188,8 @@ func (p *pullProgress) UpdateProgress(ctx context.Context, ongoing *jobs, out pr
188 188
 			return err
189 189
 		}
190 190
 
191
-		if sn.Kind == snapshots.KindActive {
191
+		switch sn.Kind {
192
+		case snapshots.KindActive:
192 193
 			if p.unpackStart == nil {
193 194
 				p.unpackStart = make(map[digest.Digest]time.Time)
194 195
 			}
... ...
@@ -209,7 +210,7 @@ func (p *pullProgress) UpdateProgress(ctx context.Context, ongoing *jobs, out pr
209 209
 					Current: 1 + seconds,
210 210
 					Units:   "s",
211 211
 				})
212
-		} else if sn.Kind == snapshots.KindCommitted {
212
+		case snapshots.KindCommitted:
213 213
 			out.WriteProgress(progress.Progress{
214 214
 				ID:         stringid.TruncateID(desc.Digest.Encoded()),
215 215
 				Action:     "Pull complete",
... ...
@@ -85,16 +85,19 @@ func New(info logger.Info) (logger.Logger, error) {
85 85
 	}
86 86
 
87 87
 	var gelfWriter gelf.Writer
88
-	if address.Scheme == "udp" {
88
+	switch address.Scheme {
89
+	case "udp":
89 90
 		gelfWriter, err = newGELFUDPWriter(address.Host, info)
90 91
 		if err != nil {
91 92
 			return nil, err
92 93
 		}
93
-	} else if address.Scheme == "tcp" {
94
+	case "tcp":
94 95
 		gelfWriter, err = newGELFTCPWriter(address.Host, info)
95 96
 		if err != nil {
96 97
 			return nil, err
97 98
 		}
99
+	default:
100
+		// TODO: consider returning an error for other schemes
98 101
 	}
99 102
 
100 103
 	return &gelfLogger{
... ...
@@ -421,9 +421,10 @@ func (tr Reader) TestConcurrent(t *testing.T) {
421 421
 	stderrMessages := []*logger.Message{}
422 422
 	stdoutMessages := []*logger.Message{}
423 423
 	for _, m := range makeTestMessages() {
424
-		if m.Source == "stdout" {
424
+		switch m.Source {
425
+		case "stdout":
425 426
 			stdoutMessages = append(stdoutMessages, m)
426
-		} else if m.Source == "stderr" {
427
+		case "stderr":
427 428
 			stderrMessages = append(stderrMessages, m)
428 429
 		}
429 430
 	}
... ...
@@ -468,11 +469,12 @@ func (tr Reader) TestConcurrent(t *testing.T) {
468 468
 		}
469 469
 
470 470
 		var messages *[]*logger.Message
471
-		if l.Source == "stdout" {
471
+		switch l.Source {
472
+		case "stdout":
472 473
 			messages = &stdoutMessages
473
-		} else if l.Source == "stderr" {
474
+		case "stderr":
474 475
 			messages = &stderrMessages
475
-		} else {
476
+		default:
476 477
 			t.Fatalf("Corrupted message.Source = %q", l.Source)
477 478
 		}
478 479
 
... ...
@@ -426,10 +426,13 @@ func (daemon *Daemon) createNetwork(ctx context.Context, cfg *config.Config, cre
426 426
 func (daemon *Daemon) pluginRefCount(driver, capability string, mode int) {
427 427
 	var builtinDrivers []string
428 428
 
429
-	if capability == driverapi.NetworkPluginEndpointType {
429
+	switch capability {
430
+	case driverapi.NetworkPluginEndpointType:
430 431
 		builtinDrivers = daemon.netController.BuiltinDrivers()
431
-	} else if capability == ipamapi.PluginEndpointType {
432
+	case ipamapi.PluginEndpointType:
432 433
 		builtinDrivers = daemon.netController.BuiltinIPAMDrivers()
434
+	default:
435
+		// other capabilities can be ignored for now
433 436
 	}
434 437
 
435 438
 	for _, d := range builtinDrivers {
... ...
@@ -518,7 +518,8 @@ func pushReservation(bytePos, bitPos uint64, head *sequence, release bool) (_ *s
518 518
 	newSequence := &sequence{block: newBlock, count: 1}
519 519
 
520 520
 	// Insert the new sequence in the list based on block position
521
-	if precBlocks == 0 { // First in sequence (A)
521
+	switch precBlocks {
522
+	case 0: // First in sequence (A)
522 523
 		newSequence.next = current
523 524
 		if current == head {
524 525
 			newHead = newSequence
... ...
@@ -528,11 +529,11 @@ func pushReservation(bytePos, bitPos uint64, head *sequence, release bool) (_ *s
528 528
 		}
529 529
 		removeCurrentIfEmpty(&newHead, newSequence, current)
530 530
 		mergeSequences(previous)
531
-	} else if precBlocks == current.count { // Last in sequence (B)
531
+	case current.count: // Last in sequence (B)
532 532
 		newSequence.next = current.next
533 533
 		current.next = newSequence
534 534
 		mergeSequences(current)
535
-	} else { // In between the sequence (C)
535
+	default: // In between the sequence (C)
536 536
 		currPre := &sequence{block: current.block, count: precBlocks, next: newSequence}
537 537
 		currPost := current
538 538
 		currPost.count -= precBlocks