Испытание мороженым: Возвращение

    var makeElement = function (tag, tagClass, text){
  var element=document.createElement(tag);
  element.classList.add(tagClass);
  if (text){
    element.textContent=text;
  }
  return element;
  
}

var renderCards=function(array){

  var list = document.querySelector('.goods');
    for (var i=0; i<array.length; i++) {
      var item = document.createElement('li');
      item.classList.add('good');
      list.appendChild(item);
      
      var title = makeElement('h2', 'good__description', array[i].text)
      item.appendChild(title);

      var picture = makeElement('img', 'good__image');
      picture.src = array[i].imgUrl;
      picture.alt = array[i].text;
      item.appendChild(picture);
    
      var price = makeElement('p', 'good__price', array[i].price+'₽/кг')
      item.appendChild(price);
      
      item.classList.add(array[i].isHit ? 'good--hit' : null);
      item.classList.add(array[i].inStock ? 'good--available' : 'good--unavailable');
      if (array[i].isHit) {
        var special = makeElement('p', 'good__special-offer', array[i].specialOffer)
        item.appendChild(special); 
        
        
      }
   } 
   
}

Картинки совпадают, задание не принимает.

Может не совпадать порядок элементов в карточке. Проверьте этот момент с помощью инспектора.

Проблема решена. В строке условия для IsHit присваивался null, если товар не является isHit, в инспекторе карточка товара отображалась, как <li class=“good good–unavailable” null> , и программа не хотела принимать решение.
item.classList.add(array[i].isHit ? 'good--hit' : null);

зачем нулл присваивать чему либо вообще, история умалчивает =)

Это была краткая запись условия if, я не знал, что будет присвоен null