X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/7af0535d3b0d7960152b06b7211c26bfd7b208cb..39464fc833e3ee2fb771f83dce9f94e3856c1075:/lib/lsf/dispatch_test.go diff --git a/lib/lsf/dispatch_test.go b/lib/lsf/dispatch_test.go index 7cf6df6431..641453e548 100644 --- a/lib/lsf/dispatch_test.go +++ b/lib/lsf/dispatch_test.go @@ -53,7 +53,7 @@ type lsfstub struct { errorRate float64 } -func (stub lsfstub) stubCommand(c *check.C) func(prog string, args ...string) *exec.Cmd { +func (stub lsfstub) stubCommand(s *suite, c *check.C) func(prog string, args ...string) *exec.Cmd { mtx := sync.Mutex{} nextjobid := 100 fakejobq := map[int]string{} @@ -71,17 +71,28 @@ func (stub lsfstub) stubCommand(c *check.C) func(prog string, args ...string) *e } switch prog { case "bsub": - c.Assert(args, check.HasLen, 4) - c.Check(args[0], check.Equals, "-J") + defaultArgs := s.disp.Cluster.Containers.LSF.BsubArgumentsList + c.Assert(len(args), check.Equals, len(defaultArgs)) + // %%J must have been rewritten to %J + c.Check(args[1], check.Equals, "/tmp/crunch-run.%J.out") + args = args[4:] switch args[1] { case arvadostest.LockedContainerUUID: - c.Check(args, check.DeepEquals, []string{"-J", arvadostest.LockedContainerUUID, "-R", "rusage[mem=11701MB:tmp=0MB] affinity[core(4)]"}) + c.Check(args, check.DeepEquals, []string{ + "-J", arvadostest.LockedContainerUUID, + "-n", "4", + "-D", "11701MB", + "-R", "rusage[mem=11701MB:tmp=0MB] span[hosts=1]"}) mtx.Lock() fakejobq[nextjobid] = args[1] nextjobid++ mtx.Unlock() case arvadostest.QueuedContainerUUID: - c.Check(args, check.DeepEquals, []string{"-J", arvadostest.QueuedContainerUUID, "-R", "rusage[mem=11701MB:tmp=45777MB] affinity[core(4)]"}) + c.Check(args, check.DeepEquals, []string{ + "-J", arvadostest.QueuedContainerUUID, + "-n", "4", + "-D", "11701MB", + "-R", "rusage[mem=11701MB:tmp=45777MB] span[hosts=1]"}) mtx.Lock() fakejobq[nextjobid] = args[1] nextjobid++ @@ -124,7 +135,7 @@ func (s *suite) TestSubmit(c *check.C) { s.disp.lsfcli.stubCommand = lsfstub{ errorRate: 0.1, sudoUser: s.disp.Cluster.Containers.LSF.BsubSudoUser, - }.stubCommand(c) + }.stubCommand(s, c) s.disp.Start() deadline := time.Now().Add(20 * time.Second) for range time.NewTicker(time.Second).C {