go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/os/resources/reboot/reboot_test.go (about)

     1  // Copyright (c) Mondoo, Inc.
     2  // SPDX-License-Identifier: BUSL-1.1
     3  
     4  package reboot
     5  
     6  import (
     7  	"path/filepath"
     8  	"testing"
     9  
    10  	"github.com/stretchr/testify/assert"
    11  	"github.com/stretchr/testify/require"
    12  	"go.mondoo.com/cnquery/providers-sdk/v1/inventory"
    13  	"go.mondoo.com/cnquery/providers/os/connection/mock"
    14  )
    15  
    16  func TestRebootOnUbuntu(t *testing.T) {
    17  	filepath, _ := filepath.Abs("./testdata/ubuntu_reboot.toml")
    18  	mock, err := mock.New(filepath, &inventory.Asset{
    19  		Platform: &inventory.Platform{
    20  			Name:   "ubuntu",
    21  			Family: []string{"linux", "debian", "ubuntu"},
    22  		},
    23  	})
    24  	require.NoError(t, err)
    25  
    26  	lb, err := New(mock)
    27  	require.NoError(t, err)
    28  
    29  	required, err := lb.RebootPending()
    30  	require.NoError(t, err)
    31  	assert.Equal(t, true, required)
    32  }
    33  
    34  func TestRebootOnRhel(t *testing.T) {
    35  	filepath, _ := filepath.Abs("./testdata/redhat_kernel_reboot.toml")
    36  	mock, err := mock.New(filepath, &inventory.Asset{
    37  		Platform: &inventory.Platform{
    38  			Name:   "redhat",
    39  			Family: []string{"linux", "redhat"},
    40  		},
    41  	})
    42  	require.NoError(t, err)
    43  
    44  	lb, err := New(mock)
    45  	require.NoError(t, err)
    46  
    47  	required, err := lb.RebootPending()
    48  	require.NoError(t, err)
    49  
    50  	assert.Equal(t, true, required)
    51  }
    52  
    53  func TestRebootOnWindows(t *testing.T) {
    54  	filepath, _ := filepath.Abs("./testdata/windows_reboot.toml")
    55  	mock, err := mock.New(filepath, &inventory.Asset{
    56  		Platform: &inventory.Platform{
    57  			Name:   "windows",
    58  			Family: []string{"windows"},
    59  		},
    60  	})
    61  	require.NoError(t, err)
    62  
    63  	lb, err := New(mock)
    64  	require.NoError(t, err)
    65  
    66  	required, err := lb.RebootPending()
    67  	require.NoError(t, err)
    68  	assert.Equal(t, true, required)
    69  }