github.com/jurelou/go-magic@v0.0.0-20230518182705-f2995a311800/errors_test.go (about)

     1  package magic
     2  
     3  import (
     4  	"reflect"
     5  	"testing"
     6  )
     7  
     8  func TestError(t *testing.T) {
     9  	mgc, err := New()
    10  	if err != nil {
    11  		t.Fatalf("unable to create new Magic type: %s", err.Error())
    12  	}
    13  	defer mgc.Close()
    14  
    15  	err = mgc.error()
    16  	func(v interface{}) {
    17  		if _, ok := v.(*Error); !ok {
    18  			t.Fatalf("not a Error type: %s", reflect.TypeOf(v).String())
    19  		}
    20  	}(err)
    21  }
    22  
    23  // func TestError_Error(t *testing.T) {
    24  // 	var v string
    25  
    26  // 	mgc, err := New()
    27  // 	if err != nil {
    28  // 		t.Fatalf("unable to create new Magic type: %s", err.Error())
    29  // 	}
    30  // 	defer mgc.Close()
    31  
    32  // 	v = "magic: an unknown error has occurred"
    33  // 	if n := Version(); n < 518 && n >= 514 {
    34  // 		// A few releases of libmagic were having issues.
    35  // 		v = "magic: no magic files loaded"
    36  // 	}
    37  
    38  // 	err = mgc.error()
    39  // 	if ok := compareStrings(err.Error(), v); !ok {
    40  // 		t.Errorf("value given %q, want %q", err.Error(), v)
    41  // 	}
    42  
    43  // 	v = "the quick brown fox jumps over the lazy dog"
    44  
    45  // 	err = &Error{0, v}
    46  // 	if ok := compareStrings(err.Error(), fmt.Sprintf("magic: %s", v)); !ok {
    47  // 		t.Errorf("value given %q, want %q", err.Error(), v)
    48  // 	}
    49  // }
    50  
    51  // func TestError_Errno(t *testing.T) {
    52  // 	var v int
    53  
    54  // 	mgc, err := New()
    55  // 	if err != nil {
    56  // 		t.Fatalf("unable to create new Magic type: %s", err.Error())
    57  // 	}
    58  // 	defer mgc.Close()
    59  
    60  // 	v = -1
    61  // 	if n := Version(); n < 518 && n >= 514 {
    62  // 		// A few releases of libmagic were having issues.
    63  // 		v = 0
    64  // 	}
    65  
    66  // 	err = mgc.error()
    67  // 	if err.(*Error).Errno != v {
    68  // 		t.Errorf("value given %d, want %d", err.(*Error).Errno, v)
    69  // 	}
    70  
    71  // 	v = 42
    72  
    73  // 	err = &Error{v, ""}
    74  // 	if err.(*Error).Errno != v {
    75  // 		t.Errorf("value given %d, want %d", err.(*Error).Errno, v)
    76  // 	}
    77  // }
    78  
    79  // func TestError_Message(t *testing.T) {
    80  // 	var v string
    81  
    82  // 	mgc, err := New()
    83  // 	if err != nil {
    84  // 		t.Fatalf("unable to create new Magic type: %s", err.Error())
    85  // 	}
    86  // 	defer mgc.Close()
    87  
    88  // 	v = "an unknown error has occurred"
    89  // 	if n := Version(); n < 518 && n >= 514 {
    90  // 		// A few releases of libmagic were having issues.
    91  // 		v = "no magic files loaded"
    92  // 	}
    93  
    94  // 	err = mgc.error()
    95  // 	if ok := compareStrings(err.(*Error).Message, v); !ok {
    96  // 		t.Errorf("value given %q, want %q", err.(*Error).Message, v)
    97  // 	}
    98  
    99  // 	v = "the quick brown fox jumps over the lazy dog"
   100  
   101  // 	err = &Error{0, v}
   102  // 	if ok := compareStrings(err.(*Error).Message, v); !ok {
   103  // 		t.Errorf("value given %q, want %q", err.(*Error).Message, v)
   104  // 	}
   105  // }