úÎGlCG/      !"#$%&'()*+,-.None HParses a query into an intermediate format which is easy to feed to HXT F The top-level lists represent the top level comma separated queries. < SelectorGroup is a group of qualifiers which are separated & with spaces or > like these three: table.main.odd tr.even > td.big J A SelectorGroup as a list of Selector items, following the above example # the selectors in the group are: table, .main and .odd  /0123456789     /0123456789NonePerform a css  on  . Returns Either  Left: Query parse error. ) Right: List of matching Html fragments.  :;<     :;<None =QBoth the OneSpec and RequestBuilder monads hold a response that can be analized, Q by making them instances of this class we can have general methods that work on  the last received response. >MThe RequestBuilder state monad constructs an url encoded string of arguments R to send with your requests. Some of the functions that run on it use the current H response to analize the forms that the server is expecting to receive. ?(Request parts let us discern regular key/'values from files sent in the request. !The OneSpec state monad is where  runs. @3The state used in a single test case defined using  The specs state monad is where  runs. ) parameterized by a database connection. 9 You should create type Specs = SpecsConn MyDBConnection AThe state used in  to build a list of specs $Runs your test suite, using you wai B and ConnectionPool for performing % the database queries in your tests. WYou application may already have your connection pool but you need to pass another one  separately here. WLook at the examples directory on this package to get an idea of the (small) amount of  boilerplate code you'&ll need to write before calling this. MStart describing a Tests suite keeping cookies and a reference to the tested B  and ConnectionPool QDescribe a single test that keeps cookies, and a reference to the last response. +Use HXT to parse a value from an html tag. ( Check for usage examples in this module' s source. QQuery the last response using css selectors, returns a list of matched fragments -Asserts that the two given values are equal. 0Assert the last response status is as expected. Assert the given header key/value pair was returned. :Assert the given header was not included in the response. EAssert the last response is exactly equal to the given text. This is # useful for testing API responses. WAssert the last response has the given text. The check is performed using the response  body in full text form. MQueries the html using a css selector, and all matched elements must contain  the given string. KPerforms a css query on the last response and asserts the matched elements  are as many as expected. !5Outputs the last response body to stderr (So it doesn't get captured by HSpec) "6Performs a CSS query and print the matches to stderr. #/Add a parameter with the given name and value. $1Add a file to be posted with the current request QAdding a file will automatically change your request content-type to be multipart/ form-data '%Lookup a _nonce form field and add it's value to the params. W Receives a CSS selector that should resolve to the form element containing the nonce. (PFor responses that display a single form, just lookup the only nonce available. ),Perform a POST request to url, using params *&Perform a POST request without params ++Perform a GET request to url, using params ,%Perform a GET request without params -dGeneral interface to performing requests, letting you specify the request method and extra headers. .MRun a persistent db query. For asserting on the results of performed actions J or setting up pre-conditions. At the moment this part is still very raw. XIt is intended that you parametize the first argument of this function for your backend ! runDB = runDBRunnder SqlPersist 1C=D>?EFGH@IAJK !"#$LM%&'()*+,-.NOP !"#$%&'()*+,-.)*+,-#$%&('. !"+C=D>?FEGH@IAJK !"#$LM%&'()*+,-.NOPQ      !"#$%&'()*+,-./0123456789:;<=>7?@ABCDEFGHIJKLLCDMNOPQRSyesod-test-0.3.2Yesod.Test.CssQueryYesod.Test.TransversingCSS Yesod.TestSelector ByAttrEnds ByAttrStartsByAttrContains ByAttrEquals ByAttrExists ByTagNameByClassById SelectorGroup DeepChildrenDirectChildren parseQueryHtmlQueryfindBySelectorrunQueryOneSpec SpecsConnrunTestsdescribeit withResponse parseHTML htmlQuery assertEqualstatusIs assertHeaderassertNoHeader bodyEquals bodyContainshtmlAllContain htmlCount printBody printMatchesbyName fileByNamebyLabel fileByLabel addNonce_addNoncepostpost_getget_ doRequest runDBRunnercssQueryrulesdirectChildren deepChildren selectorsparseId parseClassparseTag parseAttrparseAttrExists parseAttrWithrunGroupselector HoldsResponseRequestBuilder RequestPart OneSpecData SpecsData wai-1.3.0.1 Network.Wai Application CookieValue readResponse ReqFilePart ReqPlainPartRequestBuilderDatacontains nameFromLabel<>failure!$fHoldsResponseRequestBuilderData$fHoldsResponseOneSpecData