Build a Traffic Light Sequencer - Build a Traffic Light Sequencer

Tell us what’s happening:

Pls i cant sem to pass test 3,4,5,6,7 and 8 even though its returns what was required in the console

Your code so far

const config1 = {
  fault: false,
  phases: [
    { color: "green", duration: 5 },
    { color: "yellow", duration: 2 },
    { color: "red", duration: 4 }
  ]
};

const config2 = {
  fault: false,
  phases: [
    { color: "red", duration: 3 },
    { color: "yellow", duration: -2 },
    { color: "green", duration: 6 }
  ]
};

const config3 = {
  fault: true,
  phases: [
    { color: "green", duration: 5 },
    { color: "yellow", duration: 2 },
    { color: "red", duration: 6 }
  ]
};

const config4 = {
  fault: false,
  phases: []
};

function runSequence(config, cycles) {
  if (!config.phases || config.phases.length === 0) {
    console.log("No phases found");
    return;
  }

  let currentCycle = 1;

  while (currentCycle <= cycles) {
    
    for (let i = 0; i < config.phases.length; i++) {
      const phase = config.phases[i];

      if (config.fault === true) {
        console.log("Faulted phase!");
      }
      if (phase.duration <= 0) {
        console.log("Invalid phase detected");
      } else {
        console.log(`Switching to ${phase.color} for ${phase.duration} s`);
      }
    }

    currentCycle++;
  }
}

runSequence(config2, 1);

function generateTimeline (config, cycles) {
  const timeLine = [];
  let elaspedTime = 0;
  let currentCycle = 1;

  while (currentCycle <= cycles) {
    for (let i = 0; i < config.phases.length; i++) {
      const phase = config.phases[i];
      elaspedTime += phase.duration;
      timeLine.push(elaspedTime);
    }
    currentCycle++
  }
  return timeLine
}

Your browser information:

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

Challenge Information:

Build a Traffic Light Sequencer - Build a Traffic Light Sequencer

GitHub Link: freeCodeCamp/curriculum/challenges/english/blocks/lab-traffic-light-sequencer/69b83e35f19ba26ba1fa517a.md at main · freeCodeCamp/freeCodeCamp · GitHub

Hi @Adewalejohn900,

Why is this inside the loop? Did you need to use the loop variable here?

  • Log Faulted phase! and stop the simulation early if config.fault is set to true.

And why isn’t this instruction fully implemented?

Happy coding

Thank you very much for your response. I have passed all tests.

Thanks