From 80db01395c5440ca6bdeb3160070f6213c5e52e7 Mon Sep 17 00:00:00 2001 From: Ramakrishnan Muthukrishnan <ram@rkrishnan.org> Date: Wed, 19 Jul 2017 08:15:22 +0530 Subject: [PATCH] re-arrange tests: add magnet uri tests --- test/MagneturiTests.hs | 37 +++++++++++++++++++++++++++++++++++++ test/Main.hs | 9 +++++++++ 2 files changed, 46 insertions(+) create mode 100644 test/MagneturiTests.hs create mode 100644 test/Main.hs diff --git a/test/MagneturiTests.hs b/test/MagneturiTests.hs new file mode 100644 index 0000000..3689ea4 --- /dev/null +++ b/test/MagneturiTests.hs @@ -0,0 +1,37 @@ +{- +Copyright (C) 2015-2016 Ramakrishnan Muthukrishnan <ram@rkrishnan.org> + +This file is part of FuncTorrent. + +FuncTorrent is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3 of the License, or +(at your option) any later version. + +FuncTorrent is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with FuncTorrent; if not, see <http://www.gnu.org/licenses/> +-} + +-- | Tests for MagnetURI module +{-# LANGUAGE OverloadedStrings #-} + +module MagneturiTests (tests) where + +import FuncTorrent.MagnetURI +import Test.Hspec + +tests :: IO () +tests = hspec $ do + describe "MagnetURI starts with magnet:? .. " $ do + it "Valid MagnetURI" $ do + parseMagneturi "magnet:?xt=urn:btih:c12fe1c06bba254a9dc9f519b335aa7c1367a88a" + `shouldBe` (Right (Magnetinfo {infoHash = "urn:btih:c12fe1c06bba254a9dc9f519b335aa7c1367a88a", trackerlist = [], name = "", xlen = Nothing})) + it "Valid MagnetURI with tracker list" $ do + parseMagneturi "magnet:?xt=urn:btih:1f8a4ee3c3f57e81f8f0b4e658177201fc2a3118&dn=Honey+Bee+2+%5B2017%5D+Malayalam+DVDRiP+x264+AAC+700MB+ZippyMovieZ+E&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Fzer0day.ch%3A1337&tr=udp%3A%2F%2Fopen.demonii.com%3A1337&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Fexodus.desync.com%3A6969" + `shouldBe` (Right (Magnetinfo {infoHash = "urn:btih:1f8a4ee3c3f57e81f8f0b4e658177201fc2a3118", trackerlist = [ "udp://tracker.leechers-paradise.org", "udp://zer0day.ch/", "udp://open.demonii.com/", "udp://tracker.coppersurfer.tk/", "udp://exodus.desync.com/"], name = "Honey+Bee+2+%5B2017%5D+Malayalam+DVDRiP+x264+AAC+700MB+ZippyMovieZ+E", xlen = Nothing})) + diff --git a/test/Main.hs b/test/Main.hs new file mode 100644 index 0000000..09d3e98 --- /dev/null +++ b/test/Main.hs @@ -0,0 +1,9 @@ +-- | Tests main + +module Main where + +import MagneturiTests + +main :: IO () +main = tests + -- 2.45.2