github.com/observiq/carbon@v0.9.11-0.20200820160507-1b872e368a5e/operator/builtin/input/windows/event_test.go (about)

     1  // +build windows
     2  
     3  package windows
     4  
     5  import (
     6  	"testing"
     7  
     8  	"github.com/stretchr/testify/require"
     9  )
    10  
    11  func TestEventCloseWhenAlreadyClosed(t *testing.T) {
    12  	event := NewEvent(0)
    13  	err := event.Close()
    14  	require.NoError(t, err)
    15  }
    16  
    17  func TestEventCloseSyscallFailure(t *testing.T) {
    18  	event := NewEvent(5)
    19  	closeProc = SimpleMockProc(0, 0, ErrorNotSupported)
    20  	err := event.Close()
    21  	require.Error(t, err)
    22  	require.Contains(t, err.Error(), "failed to close event handle")
    23  }
    24  
    25  func TestEventCloseSuccess(t *testing.T) {
    26  	event := NewEvent(5)
    27  	closeProc = SimpleMockProc(1, 0, ErrorSuccess)
    28  	err := event.Close()
    29  	require.NoError(t, err)
    30  	require.Equal(t, uintptr(0), event.handle)
    31  }