I think a little explanation is in order here. Terminology can be tricky and misleading if you’re not well versed in it.
The EPA requires that everything related to your fuel system be design such that no gasoline can evaporate into the atmosphere. To accomplish this, manufacturers have designed in a vapor recovery system, commonly called am EVAP system or evaporative emissions system. One of the concepts under which the system operates is that it maintains a slight vacuum in the gas tank and all of its associated hardware, the vacuum preventing the escape of fumes. If you have a leak, it prevents the vacuum from being maintained and a sensor trips the Check Engine Light.
The smoke test is one wherein smoke is pumped into the air spaces in your gas tank and fuel system, and the smoke will be forceed out the leak, telling the shop where it is. It’s impossible for them to quote a repair price until they see where the leak is.
The “codes” would provide a bit more information. EVAP system codes run from 0440 to 0455, and the exact one helps isolate the possible problem.
As others have said, your vehicle will operate fine with the tank vented to atmosphere (a leak in the EVAP system). Driving the car as is will cause no damage to the vehicle and is completely safe. However, as others have mentioned, it effectively renders your Chel Engine Light useless as a “heads up” should you develo some problem that CAN cause damage. I strongly advise against not getting this fixed.
I’d suggest first getting an OEM cap and seeing of the light goes out. If it does not, have the smoke test and at least find out what needs repairing. It may be something fairly low in cost.