Исходники и презентации

This commit is contained in:
2025-05-23 07:26:39 +03:00
parent aa948179d5
commit 02d8430a3a
514 changed files with 13773 additions and 0 deletions

View File

@ -0,0 +1,63 @@
package main
import (
"testing"
"github.com/stretchr/testify/assert"
)
type Task struct {
Identifier int
Priority int
}
type Scheduler struct {
// need to implement
}
func NewScheduler() Scheduler {
// need to implement
return Scheduler{}
}
func (s *Scheduler) AddTask(task Task) {
// need to implement
}
func (s *Scheduler) ChangeTaskPriority(taskID int, newPriority int) {
// need to implement
}
func (s *Scheduler) GetTask() Task {
// need to implement
return Task{}
}
func TestTrace(t *testing.T) {
task1 := Task{Identifier: 1, Priority: 10}
task2 := Task{Identifier: 2, Priority: 20}
task3 := Task{Identifier: 3, Priority: 30}
task4 := Task{Identifier: 4, Priority: 40}
task5 := Task{Identifier: 5, Priority: 50}
scheduler := NewScheduler()
scheduler.AddTask(task1)
scheduler.AddTask(task2)
scheduler.AddTask(task3)
scheduler.AddTask(task4)
scheduler.AddTask(task5)
task := scheduler.GetTask()
assert.Equal(t, task5, task)
task = scheduler.GetTask()
assert.Equal(t, task4, task)
scheduler.ChangeTaskPriority(1, 100)
task = scheduler.GetTask()
assert.Equal(t, task1, task)
task = scheduler.GetTask()
assert.Equal(t, task3, task)
}