質問: UIGraphicsGetCurrentContextをテストの中で書くとnilを取得してしまいます。 (正確には、coordinateLineContext CGContext 0x0000000000000000) どのようにすると値を取得することができるでしょうか? また、テストをしたい関数の引数は、UIGraphicsGetCurrentContextを使うのですが関数内のロジックでは、使われていないので擬似的にCGContext型の変数を作ることでテストが可能になると考えていますので、擬似的に作る方法もありましたら教えてください。
回答: UIGraphicsGetCurrentContext()で取れるコンテキストは UIGraphicsPushContext()やUIGraphicsPopContext()で外から指定することも出来ますが、あまり出番はないかもしれません。 楽なのは以下のようにUIGraphicsBeginImageContext系を使うことです。 これを使うとUIGraphicsEndImageContext()を呼ぶまでUIGraphicsGetCurrentContext()にコンテキストがセットされた状態になります。 ``` UIGraphicsBeginImageContextWithOptions(サイズ, 不透明か?, 0) // テストしたい関数を呼ぶならこの位置 let img = UIGraphicsGetImageFromCurrentImageContext() // 描画結果をUIImageで貰う場合 UIGraphicsEndImageContext() ```