Added tests and canvas layer