go.charczuk.com@v0.0.0-20240327042549-bc490516bd1a/sdk/stringutil/main_test.go (about)

     1  /*
     2  
     3  Copyright (c) 2023 - Present. Will Charczuk. All rights reserved.
     4  Use of this source code is governed by a MIT license that can be found in the LICENSE file at the root of the repository.
     5  
     6  */
     7  
     8  package stringutil
     9  
    10  import (
    11  	"fmt"
    12  )
    13  
    14  type failAfter struct {
    15  	Written  []byte
    16  	MaxBytes int
    17  }
    18  
    19  func (fa *failAfter) Write(contents []byte) (int, error) {
    20  	fa.Written = append(fa.Written, contents...)
    21  	if len(fa.Written) > fa.MaxBytes {
    22  		return len(contents), fmt.Errorf("did fail")
    23  	}
    24  	return len(contents), nil
    25  }