github.com/pf-qiu/concourse/v6@v6.7.3-0.20201207032516-1f455d73275f/web/elm/tests/SideBarTests.elm (about) 1 module SideBarTests exposing (all) 2 3 import Browser.Dom 4 import Common 5 import Data 6 import Expect 7 import HoverState 8 import Message.Effects as Effects 9 import Message.Message exposing (DomID(..), Message(..), PipelinesSection(..)) 10 import RemoteData 11 import ScreenSize 12 import Set 13 import SideBar.SideBar as SideBar 14 import Test exposing (Test, describe, test) 15 16 17 all : Test 18 all = 19 describe "SideBar" 20 [ describe ".update" 21 [ test "asks browser for viewport when hovering a pipeline link" <| 22 \_ -> 23 model 24 |> SideBar.update (Hover <| Just domID) 25 |> Tuple.second 26 |> Common.contains 27 (Effects.GetViewportOf domID) 28 , test "does not ask browser for viewport otherwise" <| 29 \_ -> 30 model 31 |> SideBar.update (Hover <| Just ToggleJobButton) 32 |> Tuple.second 33 |> Expect.equal [] 34 ] 35 ] 36 37 38 model : SideBar.Model {} 39 model = 40 { expandedTeamsInAllPipelines = Set.fromList [ "team" ] 41 , collapsedTeamsInFavorites = Set.empty 42 , pipelines = 43 RemoteData.Success 44 [ Data.pipeline "team" 0 |> Data.withName "pipeline" ] 45 , hovered = HoverState.NoHover 46 , sideBarState = 47 { isOpen = True 48 , width = 275 49 } 50 , draggingSideBar = False 51 , screenSize = ScreenSize.Desktop 52 , favoritedPipelines = Set.empty 53 } 54 55 56 domID : DomID 57 domID = 58 SideBarPipeline AllPipelinesSection Data.pipelineId