Last time I looked at print dialogues direction in test automation (which was mistake that I did have to learn), handling the dialogue required using custom library and using threads. In that time clicking on element which displays the operating system print dialogue causes Selenium to hang until dialogue is closed. I did need to put the Selenium click in a thread and in use OS specific tools to handle the print dialogue. When print dialogue was closed, in one way or another, I did need to wait for the Selenium click thread to complete.
Because printing happens in the OS side, it’s not worth of test automation (unless you are actually testing printers), exploratory testing is better option.