[canopy]ウインドウサイズを最大化する 

SeleniumWebDriverでウインドウサイズを最大化しようと思ったら、Javaとかでは

driver.manage().window().maximize();

と書くところ、canopyではどう書くのか気になって調べました。

ウインドウを最大化する

canopyでは

pin FullScreen

と書きます。

ちなみに、デフォルトではブラウザを立ち上げると右にスナップするようになっているそうです。
コレは

pin Right

と書いた場合と同じで、左にスナップすることも可能。

githubを見ると、pinの内部実装はこんな感じ。

let pin direction =   
    let h = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Height
    let w = System.Windows.Forms.Screen.PrimaryScreen.WorkingArea.Width
    let maxWidth = w / 2    
    browser.Manage().Window.Size <- new System.Drawing.Size(maxWidth,h)        
    match direction with
    | Left -> browser.Manage().Window.Position <- new System.Drawing.Point((maxWidth * 0),0)
    | Right -> browser.Manage().Window.Position <- new System.Drawing.Point((maxWidth * 1),0)
    | FullScreen -> browser.Manage().Window.Maximize()

pinの引数directionは、types.fsの中でdirection型として定義されていて、

type direction =
    | Left
    | Right
    | FullScreen

となってました。当然テキトーな文字を渡すとビルド時に型エラーで怒られます。

この記事を書いた人

yoshikiito

都内でテストエンジニア&ブロガーをやっている@yoshikiitoです。

ソフトウェアエンジニアの学習方法や成長するための考え方、会社に依存せず自分の力で生きていけるエンジニアになる方法などについて興味があります。
こういった方法や考え方、自分が試したことなどをブログを通じて発信します。

仕事は主にソフトウェアテストやテスト自動化。
趣味は浦和レッズと読書と技術書を買って積むこと。

技術評論社から本を出すのが夢

この記事が気に入ったら
いいね!しよう

最新の情報をお届けします