rename to Diff motif
This commit is contained in:
parent
faf09acf65
commit
c6db756b68
@ -33,7 +33,7 @@ library
|
||||
Simplex.Chat.Core
|
||||
Simplex.Chat.Help
|
||||
Simplex.Chat.Markdown
|
||||
Simplex.Chat.MarkdownEditing
|
||||
Simplex.Chat.MarkdownDiff
|
||||
Simplex.Chat.Messages
|
||||
Simplex.Chat.Messages.CIContent
|
||||
Simplex.Chat.Migrations.M20220101_initial
|
||||
@ -390,7 +390,7 @@ test-suite simplex-chat-test
|
||||
ChatTests.Profiles
|
||||
ChatTests.Utils
|
||||
MarkdownTests
|
||||
MarkdownEditingTests
|
||||
MarkdownDiffTests
|
||||
MobileTests
|
||||
ProtocolTests
|
||||
SchemaDump
|
||||
|
@ -5,7 +5,7 @@
|
||||
{-# HLINT ignore "Use newtype instead of data" #-}
|
||||
|
||||
|
||||
module Simplex.Chat.MarkdownEditing
|
||||
module Simplex.Chat.MarkdownDiff
|
||||
( DiffedChar(..)
|
||||
, DiffedPlainChar(..)
|
||||
, DiffStatus(..)
|
||||
@ -14,8 +14,8 @@ module Simplex.Chat.MarkdownEditing
|
||||
, FormattedChar(..)
|
||||
, LeftSide(..)
|
||||
, RightSide(..)
|
||||
, findDiffs
|
||||
, findPlainDiffs
|
||||
, diff
|
||||
, plainDiff
|
||||
)
|
||||
where
|
||||
|
||||
@ -73,10 +73,10 @@ newtype DeleteIndicies = DeleteIndicies (Seq Int) deriving (Show, Eq)
|
||||
newtype InsertIndicies = InsertIndicies (Seq Int) deriving (Show, Eq)
|
||||
|
||||
|
||||
findPlainDiffs :: LeftSide T.Text -> RightSide T.Text -> Seq DiffedPlainChar
|
||||
findPlainDiffs (LeftSide left) (RightSide right) = toPlain <$> diffs
|
||||
plainDiff :: LeftSide T.Text -> RightSide T.Text -> Seq DiffedPlainChar
|
||||
plainDiff (LeftSide left) (RightSide right) = toPlain <$> formattedDiff
|
||||
where
|
||||
diffs = findDiffs (LeftSide $ toFormatted left) (RightSide $ toFormatted right)
|
||||
formattedDiff = diff (LeftSide $ toFormatted left) (RightSide $ toFormatted right)
|
||||
|
||||
toPlain :: DiffedChar -> DiffedPlainChar
|
||||
toPlain (DiffedChar (FormattedChar c _) diffStatus) = DiffedPlainChar c diffStatusPlain
|
||||
@ -90,8 +90,8 @@ findPlainDiffs (LeftSide left) (RightSide right) = toPlain <$> diffs
|
||||
toFormatted = fmap (`FormattedChar` Nothing) . S.fromList . T.unpack
|
||||
|
||||
|
||||
findDiffs :: LeftSide (Seq FormattedChar) -> RightSide (Seq FormattedChar) -> Seq DiffedChar
|
||||
findDiffs (LeftSide left) (RightSide right) = addInserts markDeletesAndUnchangedChars
|
||||
diff :: LeftSide (Seq FormattedChar) -> RightSide (Seq FormattedChar) -> Seq DiffedChar
|
||||
diff (LeftSide left) (RightSide right) = addInserts markDeletesAndUnchangedChars
|
||||
where
|
||||
edits = D.diffTexts (toText left) (toText right)
|
||||
(DeleteIndicies deleteIndicies, InsertIndicies insertIndicies) = indices
|
@ -2,12 +2,12 @@
|
||||
{-# LANGUAGE OverloadedLists #-}
|
||||
{-# LANGUAGE OverloadedStrings #-}
|
||||
|
||||
module MarkdownEditingTests where
|
||||
module MarkdownDiffTests where
|
||||
|
||||
import qualified Data.Sequence as S
|
||||
import Simplex.Chat.Markdown
|
||||
|
||||
import Simplex.Chat.MarkdownEditing
|
||||
import Simplex.Chat.MarkdownDiff
|
||||
( FormattedChar(..),
|
||||
DiffedChar(..),
|
||||
DiffedPlainChar(..),
|
||||
@ -16,8 +16,8 @@ import Simplex.Chat.MarkdownEditing
|
||||
DiffFormatStatus(..),
|
||||
LeftSide(..),
|
||||
RightSide(..),
|
||||
findDiffs,
|
||||
findPlainDiffs )
|
||||
diff,
|
||||
plainDiff )
|
||||
|
||||
|
||||
import System.Console.ANSI.Types
|
||||
@ -25,15 +25,15 @@ import Test.Hspec
|
||||
import qualified Data.List.NonEmpty as NE
|
||||
|
||||
|
||||
markdownEditingTests :: Spec
|
||||
markdownEditingTests = do
|
||||
markdownDiffTests :: Spec
|
||||
markdownDiffTests = do
|
||||
formattedEditedTextTests
|
||||
|
||||
|
||||
formattedEditedTextTests :: Spec
|
||||
formattedEditedTextTests = describe "show edits" do
|
||||
it "empty no change" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[
|
||||
])
|
||||
@ -45,7 +45,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "no change" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' Nothing
|
||||
])
|
||||
@ -57,7 +57,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "add 1 char to empty" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[
|
||||
])
|
||||
@ -69,7 +69,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "del the one and only" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' Nothing
|
||||
])
|
||||
@ -81,7 +81,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "one character change" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' Nothing
|
||||
, FormattedChar 'r' Nothing
|
||||
@ -106,7 +106,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "more1" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' Nothing
|
||||
, FormattedChar 'r' Nothing
|
||||
@ -137,7 +137,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "more2" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' Nothing
|
||||
, FormattedChar 'r' Nothing
|
||||
@ -166,7 +166,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "more3" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' (Just Bold)
|
||||
, FormattedChar 'H' (Just Bold)
|
||||
@ -198,7 +198,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "more4" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar 'H' Nothing
|
||||
, FormattedChar 'r' Nothing
|
||||
@ -240,7 +240,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "SimplexLink 1" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar '>' $ Just $ SimplexLink
|
||||
{ linkType = XLContact
|
||||
@ -274,7 +274,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "SimplexLink 2" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar '>' $ Just $ SimplexLink
|
||||
{ linkType = XLContact
|
||||
@ -308,7 +308,7 @@ formattedEditedTextTests = describe "show edits" do
|
||||
]
|
||||
|
||||
it "SimplexLink 3" do
|
||||
findDiffs
|
||||
diff
|
||||
(LeftSide $ S.fromList
|
||||
[ FormattedChar '>' $ Just $ SimplexLink
|
||||
{ linkType = XLContact
|
||||
@ -341,8 +341,8 @@ formattedEditedTextTests = describe "show edits" do
|
||||
}
|
||||
]
|
||||
|
||||
it "findPlainDiffs 1" do
|
||||
findPlainDiffs
|
||||
it "plainDiff 1" do
|
||||
plainDiff
|
||||
(LeftSide "https://api.twitter.com/2/tweets/:id")
|
||||
(RightSide "https://api.twitter.com/3/tweets/:id")
|
||||
`shouldBe` S.fromList
|
||||
@ -385,8 +385,8 @@ formattedEditedTextTests = describe "show edits" do
|
||||
, DiffedPlainChar 'd' UnchangedP
|
||||
]
|
||||
|
||||
it "findPlainDiffs 2" do
|
||||
findPlainDiffs
|
||||
it "plainDiff 2" do
|
||||
plainDiff
|
||||
(LeftSide "Hrl~!@lo")
|
||||
(RightSide "Herxy!@zo12")
|
||||
`shouldBe` S.fromList
|
@ -3,7 +3,7 @@ import ChatTests
|
||||
import Control.Logger.Simple
|
||||
import Data.Time.Clock.System
|
||||
import MarkdownTests
|
||||
import MarkdownEditingTests
|
||||
import MarkdownDiffTests
|
||||
import MobileTests
|
||||
import ProtocolTests
|
||||
import SchemaDump
|
||||
@ -16,7 +16,7 @@ main :: IO ()
|
||||
main = do
|
||||
setLogLevel LogError -- LogDebug
|
||||
withGlobalLogging logCfg . hspec $ do
|
||||
describe "SimpleX chat markdown editing" markdownEditingTests
|
||||
describe "SimpleX chat markdown diff" markdownDiffTests
|
||||
-- describe "SimpleX chat markdown" markdownTests
|
||||
-- describe "SimpleX chat view" viewTests
|
||||
-- describe "SimpleX chat protocol" protocolTests
|
||||
|
Loading…
Reference in New Issue
Block a user