Мне чёт лень писать ещё больше постов о сферической задаче в вакууме, в которой ты решил оверинжинирить насчёт «промок» (бесплатных курсов), сорян.
Я указал что задача тривиальная, если смотреть на неё только как на задачу типичных классов эквивалентности и не додумывать там за логику работы скидок в рамках одной покупки
А если думать про то как работают бесплатные промо на курсы, то лучше это делать отдельным тестом, с отдельным датапровайдером и отдельной параметризацией количества исходных промок на юзера.