According to the analogWrite() documentation, apparently the trouble are that you have swapped the args.
The syntax are analogWrite(pin, value), so, the piece
//read the value at the SIG pin
analogWrite(testValue, SIG_pin);
may work if you simply change to
//read the value at the SIG pin
analogWrite(SIG_pin, testValue);
That with respect to code, and i hope it helps you. At the other hand, the circuit, may be a bit dangerous (and can damage the Arduino or the mux) to use LEDs without a current limiter series resistor (330 - 1K Ohm would be nice values, 1/4 W). At least, by a light sight in a datasheet of the CD74HC4067, shows max currents of +/- 25 mA per pin. Similar currents can be driven by the Arduino (Atmega 328P).
So, all depends on the internal construction of the 4067, if are a transparent mux, maybe just with a single resistance in the SIG_pin in that range of resistances, would be fine.
Edit - Some Circuit Troubleshooting
There are some other little tests that you can do after that change in code:
- Open the wire that goes from the Arduino to the common of the mux, then place at the output of the same Arduino pin, a LED-resistor series. Then change in program only the value of
testvalueat the beginning of the code and check if the led changes their intensity according to that. That would be an Ok for that pin of the Arduino. - Reply the previous step to each of the channel pins. According to the code, you should see an increasing 1 Hz, 4 bits counter (rather, a BCD counter) in thet formed 4 led array. That would be an OK for the channel selection pins.
- Remove the leds and connect back the opened lines.
Any fail in steps 1 or 2 may indicate that the pin are damaged but you can use another analog pin and other pins for the channels respectively. But if at step 3 it doesn't works, may be a damaged 4067 or a little hidden bad connection...