diff options
author | Dan Davison <dandavison7@gmail.com> | 2020-04-26 13:36:58 -0400 |
---|---|---|
committer | Dan Davison <dandavison7@gmail.com> | 2020-04-26 14:26:54 -0400 |
commit | fcaf206657192926c318ed109e7b6a77375d6379 (patch) | |
tree | 7d7abf32c4fabeed3a578102656754ef05d2a4b4 /tests | |
parent | 67520c4bc3caa5dce7a47ed3ff900b2b8a712f7f (diff) |
Move directory of test examples
Diffstat (limited to 'tests')
-rwxr-xr-x | tests/examples/121-unrecognized-content-before-diff-1 | 2 | ||||
-rwxr-xr-x | tests/examples/121-unrecognized-content-before-diff-2 | 2 | ||||
-rw-r--r-- | tests/examples/125-merge-conflict-1.diff | 48 | ||||
-rw-r--r-- | tests/examples/125-merge-conflict-2.diff | 42 | ||||
-rw-r--r-- | tests/examples/55-unicode-width.diff | 17 | ||||
-rwxr-xr-x | tests/examples/56-unified-directory-diff | 10 | ||||
-rwxr-xr-x | tests/examples/60-submodule | 17 | ||||
-rwxr-xr-x | tests/examples/93-binary | 16 |
8 files changed, 154 insertions, 0 deletions
diff --git a/tests/examples/121-unrecognized-content-before-diff-1 b/tests/examples/121-unrecognized-content-before-diff-1 new file mode 100755 index 00000000..c02c361e --- /dev/null +++ b/tests/examples/121-unrecognized-content-before-diff-1 @@ -0,0 +1,2 @@ +#!/bin/bash +git show -p --cc --format= --numstat --stat diff --git a/tests/examples/121-unrecognized-content-before-diff-2 b/tests/examples/121-unrecognized-content-before-diff-2 new file mode 100755 index 00000000..2d09108d --- /dev/null +++ b/tests/examples/121-unrecognized-content-before-diff-2 @@ -0,0 +1,2 @@ +#!/bin/bash +git stash show --stat --patch diff --git a/tests/examples/125-merge-conflict-1.diff b/tests/examples/125-merge-conflict-1.diff new file mode 100644 index 00000000..a13b761b --- /dev/null +++ b/tests/examples/125-merge-conflict-1.diff @@ -0,0 +1,48 @@ +diff --cc src/config.rs +index e35d2e4,fad673e..0000000 +--- a/src/config.rs ++++ b/src/config.rs +@@@ -1,4 -1,5 +1,10 @@@ +++<<<<<<< Updated upstream + +use std::process; +++||||||| constructed merge base +++======= ++ use std::process; ++ +++>>>>>>> Stashed changes + use std::str::FromStr; + + use syntect::highlighting::{Color, Style, StyleModifier, Theme, ThemeSet}; +@@@ -78,7 -40,9 +84,15 @@@ pub fn get_config<'a> + theme_set, + ); + +++<<<<<<< Updated upstream + + let theme = if style::is_no_syntax_highlighting_theme_name(&theme_name) { +++||||||| constructed merge base +++ let theme = if is_no_syntax_highlighting_theme_name(&theme_name) { +++======= ++ println!("theme_name: {}", theme_name); ++ ++ let theme = if is_no_syntax_highlighting_theme_name(&theme_name) { +++>>>>>>> Stashed changes + None + } else { + Some(&theme_set.themes[&theme_name]) +@@@ -190,10 -128,14 +204,14 @@@ fn get_is_light_mode_and_theme_name + ) -> (bool, String) { + let theme_arg = valid_theme_name_or_none(theme_arg, theme_set); + let bat_theme_env_var = valid_theme_name_or_none(bat_theme_env_var, theme_set); ++ ++ println!("theme_arg: {:?}", theme_arg); ++ println!("bat_theme_env_var: {:?}", bat_theme_env_var); ++ + match (theme_arg, bat_theme_env_var, light_mode_arg) { + (None, None, false) => (false, style::DEFAULT_DARK_THEME.to_string()), + - (Some(theme_name), _, false) => (is_light_theme(&theme_name), theme_name), + - (None, Some(theme_name), false) => (is_light_theme(&theme_name), theme_name), + + (Some(theme_name), _, false) => (style::is_light_theme(&theme_name), theme_name), + + (None, Some(theme_name), false) => (style::is_light_theme(&theme_name), theme_name), + (None, None, true) => (true, style::DEFAULT_LIGHT_THEME.to_string()), + (Some(theme_name), _, is_light_mode) => (is_light_mode, theme_name), + (None, Some(theme_name), is_light_mode) => (is_light_mode, theme_name), diff --git a/tests/examples/125-merge-conflict-2.diff b/tests/examples/125-merge-conflict-2.diff new file mode 100644 index 00000000..3fd66fac --- /dev/null +++ b/tests/examples/125-merge-conflict-2.diff @@ -0,0 +1,42 @@ +diff --cc Makefile +index 759070d,3daf9eb..0000000 +--- a/Makefile ++++ b/Makefile +@@@ -4,13 -4,16 +4,37 @@@ build + lint: + cargo clippy + +++<<<<<<< Updated upstream + +test: unit-test end-to-end-test + + + +unit-test: + + cargo test + + + +end-to-end-test: build + + bash -c "diff -u <(git log -p) <(git log -p | target/release/delta --color-only | perl -pe 's/\e\[[0-9;]*m//g')" +++||||||| constructed merge base +++test: +++ cargo test +++ bash -c "diff -u <(git log -p) \ +++ <(git log -p | delta --width variable \ +++ --tabs 0 \ +++ --retain-plus-minus-markers \ +++ --commit-style plain \ +++ --file-style plain \ +++ --hunk-style plain \ +++ | ansifilter)" +++======= ++ test: ++ cargo test --release ++ bash -c "diff -u <(git log -p) \ ++ <(git log -p | target/release/delta --width variable \ ++ --tabs 0 \ ++ --retain-plus-minus-markers \ ++ --commit-style plain \ ++ --file-style plain \ ++ --hunk-style plain \ ++ | ansifilter)" > /dev/null +++>>>>>>> Stashed changes + + release: + @make -f release.Makefile release diff --git a/tests/examples/55-unicode-width.diff b/tests/examples/55-unicode-width.diff new file mode 100644 index 00000000..4e2b1c82 --- /dev/null +++ b/tests/examples/55-unicode-width.diff @@ -0,0 +1,17 @@ +diff --git a/test.txt b/test.txt +index 66a5cb0..0e8c1b9 100644 +--- a/test.txt ++++ b/test.txt +@@ -1,1 +1,1 @@ +-This is an English sentence. This is an English sentence. This is an English sentence. This is an English sentence. This is an English sentence. ++This is an English sentence. This is an English sentence. This is an English sentence. This is an English sentence. This is an English sentence. some more words + +-这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。 ++这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。这是一个汉语句子。多点字 ++ ++Another line of English ++更多一行汉语 ++Another line of English ++更多一行汉语 ++Another line of English ++更多一行汉语 diff --git a/tests/examples/56-unified-directory-diff b/tests/examples/56-unified-directory-diff new file mode 100755 index 00000000..650ed20d --- /dev/null +++ b/tests/examples/56-unified-directory-diff @@ -0,0 +1,10 @@ +#!/bin/bash +d1=$(mktemp -d) +d2=$(mktemp -d) +mkdir $d1 $d2 +git show HEAD~10:./src/delta.rs > $d1/a.rs +git show HEAD:./src/delta.rs > $d2/a.rs +touch $d2/b.rs +git show HEAD~10:./src/paint.rs > $d1/c.rs +git show HEAD:./src/paint.rs > $d2/c.rs +diff -u $d1 $d2 diff --git a/tests/examples/60-submodule b/tests/examples/60-submodule new file mode 100755 index 00000000..c7830db5 --- /dev/null +++ b/tests/examples/60-submodule @@ -0,0 +1,17 @@ +#!/bin/bash + +submodule=$(mktemp -d) +repo=$(mktemp -d) +cd $submodule +git init +git commit --allow-empty -m "Initial commit" +cd $repo +git init +git submodule add $submodule submodule +git commit --allow-empty -m "Initial commit" +touch submodule/a +cat >> .git/config <<EOF +[diff] + submodule = log +EOF +git diff | cat diff --git a/tests/examples/93-binary b/tests/examples/93-binary new file mode 100755 index 00000000..447ccdf6 --- /dev/null +++ b/tests/examples/93-binary @@ -0,0 +1,16 @@ +# Test script written by @gibfahn in https://github.com/dandavison/delta/issues/93 +dir=/tmp/tst +rm -fr $dir && mkdir -p $dir && cd $dir +git init +echo hello > bar +git add bar && git commit -m "added text file bar" +echo -n -e \\x48\\x00\\x49\\x00 > foo +git add foo +GIT_PAGER="delta --theme=TwoDark" git diff --staged +GIT_PAGER=less git diff --staged +git commit -m "added binary file foo" +echo -n -e \\x49\\x00\\x48\\x00 > foo +git add foo +git commit -m "changed binary file foo" +GIT_PAGER="delta --theme=TwoDark" git log -p +GIT_PAGER=less git log -p |