github.com/iqoqo/nomad@v0.11.3-0.20200911112621-d7021c74d101/internal/testing/apitests/util_test.go (about)

     1  package apitests
     2  
     3  import (
     4  	"testing"
     5  	"time"
     6  
     7  	"github.com/hashicorp/nomad/api"
     8  )
     9  
    10  // boolToPtr returns the pointer to a boolean
    11  func boolToPtr(b bool) *bool {
    12  	return &b
    13  }
    14  
    15  // intToPtr returns the pointer to an int
    16  func intToPtr(i int) *int {
    17  	return &i
    18  }
    19  
    20  // timeToPtr returns the pointer to a time stamp
    21  func timeToPtr(t time.Duration) *time.Duration {
    22  	return &t
    23  }
    24  
    25  // stringToPtr returns the pointer to a string
    26  func stringToPtr(str string) *string {
    27  	return &str
    28  }
    29  
    30  func assertQueryMeta(t *testing.T, qm *api.QueryMeta) {
    31  	t.Helper()
    32  	if qm.LastIndex == 0 {
    33  		t.Fatalf("bad index: %d", qm.LastIndex)
    34  	}
    35  	if !qm.KnownLeader {
    36  		t.Fatalf("expected known leader, got none")
    37  	}
    38  }
    39  
    40  func assertWriteMeta(t *testing.T, wm *api.WriteMeta) {
    41  	t.Helper()
    42  	if wm.LastIndex == 0 {
    43  		t.Fatalf("bad index: %d", wm.LastIndex)
    44  	}
    45  }
    46  
    47  func testJob() *api.Job {
    48  	task := api.NewTask("task1", "exec").
    49  		SetConfig("command", "/bin/sleep").
    50  		Require(&api.Resources{
    51  			CPU:      intToPtr(100),
    52  			MemoryMB: intToPtr(256),
    53  		}).
    54  		SetLogConfig(&api.LogConfig{
    55  			MaxFiles:      intToPtr(1),
    56  			MaxFileSizeMB: intToPtr(2),
    57  		})
    58  
    59  	group := api.NewTaskGroup("group1", 1).
    60  		AddTask(task).
    61  		RequireDisk(&api.EphemeralDisk{
    62  			SizeMB: intToPtr(25),
    63  		})
    64  
    65  	job := api.NewBatchJob("job1", "redis", "global", 1).
    66  		AddDatacenter("dc1").
    67  		AddTaskGroup(group)
    68  
    69  	return job
    70  }
    71  
    72  // conversions utils only used for testing
    73  // added here to avoid linter warning
    74  
    75  // int64ToPtr returns the pointer to an int
    76  func int64ToPtr(i int64) *int64 {
    77  	return &i
    78  }
    79  
    80  // float64ToPtr returns the pointer to an float64
    81  func float64ToPtr(f float64) *float64 {
    82  	return &f
    83  }