module SwapArgsSpec (main, spec) where import Test.Hspec -- import qualified GHC as GHC -- import qualified GhcMonad as GHC -- import qualified RdrName as GHC -- import qualified SrcLoc as GHC import Language.Haskell.Refact.Refactoring.SwapArgs import TestUtils import System.Directory -- --------------------------------------------------------------------- main :: IO () main = do -- setLogger hspec spec spec :: Spec spec = do describe "swapArgs" $ do it "checks for that an identifier is selected" $ do res <- catchException (ct $ swapArgs defaultTestSettings testOptions ["./SwapArgs/B.hs","4","1"]) -- let res = "foo" (show res) `shouldBe` "Just \"Incorrect identifier selected!\"" it "swaps arguments for a definition at the top level" $ do r <- ct $ swapArgs defaultTestSettings testOptions ["./SwapArgs/B.hs","9","1"] -- r <- ct $ swapArgs logTestSettings testOptions ["./SwapArgs/B.hs","9","1"] r' <- ct $ mapM makeRelativeToCurrentDirectory r (show r') `shouldBe` "[\"SwapArgs/B.hs\"]" pendingWith "need to complete this" -- diff <- compareFiles "./test/testdata/SwapArgs/B.refactored.hs" -- "./test/testdata/SwapArgs/B.hs.expected" -- diff `shouldBe` [] -- --------------------------------------------------------------------- -- Helper functions