Skip to content

Commit

Permalink
Creating Tests for the function submitJobs
Browse files Browse the repository at this point in the history
Signed-off-by: shivam <[email protected]>
  • Loading branch information
shivam-matchmyflight committed Mar 2, 2024
1 parent 8e52353 commit 11d44d4
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 2 deletions.
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)
}
}

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
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{
}
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")
}

0 comments on commit 11d44d4

Please sign in to comment.