help me why it's not running pass tests

Tell us what’s happening:

Your code so far

// Setup
var collection = {
2548: {
  albumTitle: 'Slippery When Wet',
  artist: 'Bon Jovi',
  tracks: ['Let It Rock', 'You Give Love a Bad Name']
2468: {
  albumTitle: '1999',
  artist: 'Prince',
  tracks: ['1999', 'Little Red Corvette']
1245: {
  artist: 'Robert Palmer',
  tracks: []
5439: {
  albumTitle: 'ABBA Gold'

// Only change code below this line
function updateRecords(object, id, prop, value) {
 if(prop !== 'tracks' && value !== "") {
  collection[id][prop] = value;

if(prop === 'tracks' && collection[id][prop] === undefined) {
  collection[id][prop] = [];

if(prop === 'tracks') {
  let track = collection[id][prop];

if(value === "") {
  delete collection[id][prop]

return collection;

updateRecords(collection, 5439, 'artist', 'ABBA');

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36.

Challenge: Record Collection

Link to the challenge:

Hello there.

Do you have a question?

If so, please edit your post to include it in the Tell us what’s happening section.

The more information you give us, the more likely we are to be able to help.

Essentially you are asking why it isn’t working. If you leave comments in your code that can also help people more easily debug your thinking. It’s much better to catch a mistake in your thinking so as to prevent repeating that mistake in other exercises than to just help you correct the code.

Maybe break down the problem into steps using console.log and see where the outcome is unexpected.

you never use object parameter, instead you reference global object