Skip to content

Commit 24d0ce3

Browse files
committed
Added ProcTimeGenerator to NewProcessor().
Resolves #1.
1 parent 5ace254 commit 24d0ce3

File tree

5 files changed

+15
-24
lines changed

5 files changed

+15
-24
lines changed

arrbeh_test.go

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@ func TestShortestQueueArrBeh(t *testing.T) {
2121
}
2222
procs = make([]*Processor, 3)
2323
for i = 0; i < 3; i++ {
24-
procs[i] = NewProcessor()
25-
procs[i].SetProcTimeGenerator(simplePtg)
24+
procs[i] = NewProcessor(simplePtg)
2625
}
2726
ab = NewShortestQueueArrBeh(queues, procs)
2827

@@ -131,8 +130,7 @@ func TestShortestQueueArrBehBeforeAssign(t *testing.T) {
131130
}
132131
procs = make([]*Processor, 3)
133132
for i = 0; i < 3; i++ {
134-
procs[i] = NewProcessor()
135-
procs[i].SetProcTimeGenerator(simplePtg)
133+
procs[i] = NewProcessor(simplePtg)
136134
}
137135
ab = NewShortestQueueArrBeh(queues, procs)
138136

@@ -171,8 +169,7 @@ func TestShortestQueueArrBehAfterAssign(t *testing.T) {
171169
}
172170
procs = make([]*Processor, 3)
173171
for i = 0; i < 3; i++ {
174-
procs[i] = NewProcessor()
175-
procs[i].SetProcTimeGenerator(simplePtg)
172+
procs[i] = NewProcessor(simplePtg)
176173
}
177174
ab = NewShortestQueueArrBeh(queues, procs)
178175

discipline_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,7 @@ func TestOneToOneFIFODiscipline(t *testing.T) {
1414

1515
for i = 0; i < 3; i++ {
1616
queues = append(queues, NewQueue())
17-
procs = append(procs, NewProcessor())
18-
procs[i].SetProcTimeGenerator(simplePtg)
17+
procs = append(procs, NewProcessor(simplePtg))
1918
}
2019
NewOneToOneFIFODiscipline(queues, procs)
2120

grocery_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,8 @@ func (sys *GrocerySystem) Init() {
5050
for i = 0; i < 3; i++ {
5151
sys.queues[i] = NewQueue()
5252
sys.queues[i].QueueId = i
53-
sys.processors[i] = NewProcessor()
53+
sys.processors[i] = NewProcessor(procTimeGenerator)
5454
sys.processors[i].ProcessorId = i
55-
sys.processors[i].SetProcTimeGenerator(procTimeGenerator)
5655
sys.processors[i].AfterFinish(func(p *Processor, j *Job) {
5756
sys.FinishedJobs = append(sys.FinishedJobs, j)
5857
})

processor.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,8 @@ func (p *Processor) afterFinish(j *Job) {
138138
}
139139

140140
// NewProcessor creates a new Processor struct.
141-
func NewProcessor() (p *Processor) {
142-
return new(Processor)
141+
func NewProcessor(procTimeGenerator func(j *Job) int) (p *Processor) {
142+
p = new(Processor)
143+
p.SetProcTimeGenerator(procTimeGenerator)
144+
return
143145
}

processor_test.go

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ func TestProcessorStart(t *testing.T) {
1717
var procTime int
1818
var err error
1919

20-
proc = NewProcessor()
21-
proc.SetProcTimeGenerator(simplePtg)
20+
proc = NewProcessor(simplePtg)
2221
j0 = NewJob(0)
2322

2423
procTime, err = proc.Start(j0)
@@ -60,8 +59,7 @@ func TestProcessorFinish(t *testing.T) {
6059
var proc *Processor
6160
var j *Job
6261

63-
proc = NewProcessor()
64-
proc.SetProcTimeGenerator(simplePtg)
62+
proc = NewProcessor(simplePtg)
6563
j = NewJob(0)
6664
proc.Start(j)
6765
if j != proc.Finish() {
@@ -81,8 +79,7 @@ func TestBeforeStart(t *testing.T) {
8179
var proc, receivedProc *Processor
8280
var j0, j1, receivedJob *Job
8381

84-
proc = NewProcessor()
85-
proc.SetProcTimeGenerator(simplePtg)
82+
proc = NewProcessor(simplePtg)
8683
j0 = NewJob(0)
8784

8885
cbBeforeStart := func(cbProc *Processor, cbJob *Job) {
@@ -122,8 +119,7 @@ func TestAfterStart(t *testing.T) {
122119
var j0, j1, receivedJob *Job
123120
var receivedProcTime int
124121

125-
proc = NewProcessor()
126-
proc.SetProcTimeGenerator(simplePtg)
122+
proc = NewProcessor(simplePtg)
127123
j0 = NewJob(0)
128124

129125
cbAfterStart := func(cbProc *Processor, cbJob *Job, cbProcTime int) {
@@ -163,8 +159,7 @@ func TestBeforeFinish(t *testing.T) {
163159
var proc, receivedProc *Processor
164160
var j, receivedJob *Job
165161

166-
proc = NewProcessor()
167-
proc.SetProcTimeGenerator(simplePtg)
162+
proc = NewProcessor(simplePtg)
168163
j = NewJob(0)
169164
proc.Start(j)
170165

@@ -203,8 +198,7 @@ func TestAfterFinish(t *testing.T) {
203198
var proc, receivedProc *Processor
204199
var j, receivedJob *Job
205200

206-
proc = NewProcessor()
207-
proc.SetProcTimeGenerator(simplePtg)
201+
proc = NewProcessor(simplePtg)
208202
j = NewJob(0)
209203
proc.Start(j)
210204

0 commit comments

Comments
 (0)