Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Creating Tests for the function submitJobs #3438

Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions internal/executor/job/submit.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ type FailedSubmissionDetails struct {

func (submitService *SubmitService) SubmitJobs(jobsToSubmit []*SubmitJob) []*FailedSubmissionDetails {
return submitService.submitJobs(jobsToSubmit)
}
}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please remove this change - there shouldn't be extra whitespace at the end of lines. (I think running golangci-lint will warn about things like this, and using go fmt file_xxx.go will fix it for you.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @richscott I will make these changes


func (submitService *SubmitService) submitJobs(jobsToSubmit []*SubmitJob) []*FailedSubmissionDetails {
wg := &sync.WaitGroup{}
Expand Down Expand Up @@ -110,7 +110,7 @@ func (submitService *SubmitService) submitWorker(wg *sync.WaitGroup, jobsToSubmi
// submitPod submits a pod to k8s together with any services and ingresses bundled with the Armada job.
// This function may fail partly, i.e., it may successfully create a subset of the requested objects before failing.
// In case of failure, any already created objects are not cleaned up.
func (submitService *SubmitService) submitPod(job *SubmitJob) (*v1.Pod, error) {
func (submitService *SubmitService) submitPod(job *SubmitJob) (*v1.Pod, error) { //iska krna h
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks like a leftover note or typo - please remove it.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh I missed it to remove

pod := job.Pod
// Ensure the K8SService and K8SIngress fields are populated
submitService.applyExecutorSpecificIngressDetails(job)
Expand Down
27 changes: 27 additions & 0 deletions internal/executor/job/submit_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -94,3 +94,30 @@ func newArbitraryError(message string) error {
func newArmadaErrCreateResource() error {
return &armadaerrors.ErrCreateResource{}
}

func TestSubmitJobs(t *testing.T){
submitService := &SubmitService{
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think running go fmt on this file would collapse the two lines of the SubmitService reference into one, since there are no members declared in it.

}
job1 := &SubmitJob{}
job2 := &SubmitJob{}

jobsToSubmit := []*SubmitJob{job1, job2}

submitJobsChannel := make(chan *SubmitJob)
failedJobsChannel := make(chan *FailedSubmissionDetails, len(jobsToSubmit))

assert.NotNil(t, submitJobsChannel, "Failed to create submitJobsChannel")
assert.NotNil(t, failedJobsChannel, "Failed to create failedJobsChannel")

submitService.submitWorker = func(wg *sync.WaitGroup, submitJobs chan *SubmitJob, failedJobs chan *FailedSubmissionDetails) {
for job := range submitJobs {
failedJobs <- &FailedSubmissionDetails{
}
}
wg.Done()
}
failedJobs := submitService.submitJobs(jobsToSubmit)

assert.NotNil(t, failedJobs, "Function did not returned slice of FailedSubmissionDetails")
assert.Len(t, failedJobs, len(jobsToSubmit), "Unexpected length of failedJobs")
}