From f2efa593db0c2700f39c95eb27e3d1d5bf7d2c79 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Mon, 24 Feb 2020 15:47:27 -0800 Subject: [PATCH 01/19] fixing compatibility issues with serializaiton --- .../schema/encoding/schema_marshaling.go | 4 +- .../schema/encoding/schema_marshaling_test.go | 83 +++++++++++++++++++ 2 files changed, 85 insertions(+), 2 deletions(-) diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling.go b/go/libraries/doltcore/schema/encoding/schema_marshaling.go index 49413ca92f0..572cdcb4fc1 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling.go @@ -32,7 +32,7 @@ type encodedColumn struct { Name string `noms:"name" json:"name"` // Kind is the type of the field. See types/noms_kind.go in the liquidata fork for valid values - Kind string `noms:"kind,omitempty" json:"kind,omitempty"` + Kind string `noms:"kind" json:"kind"` IsPartOfPK bool `noms:"is_part_of_pk" json:"is_part_of_pk"` @@ -70,7 +70,7 @@ func encodeColumn(col schema.Column) encodedColumn { return encodedColumn{ col.Tag, col.Name, - "", + col.KindString(), col.IsPartOfPK, encodeTypeInfo(col.TypeInfo), encodeAllColConstraints(col.Constraints)} diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go index d2868591410..eb59231045e 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go @@ -16,6 +16,7 @@ package encoding import ( "context" + "errors" "reflect" "testing" @@ -28,6 +29,7 @@ import ( "github.com/liquidata-inc/dolt/go/libraries/doltcore/schema" "github.com/liquidata-inc/dolt/go/libraries/doltcore/schema/typeinfo" "github.com/liquidata-inc/dolt/go/store/constants" + "github.com/liquidata-inc/dolt/go/store/marshal" "github.com/liquidata-inc/dolt/go/store/types" ) @@ -68,6 +70,16 @@ func TestNomsMarshalling(t *testing.T) { if !reflect.DeepEqual(tSchema, unMarshalled) { t.Error("Value different after marshalling and unmarshalling.") } + + validated, err := validateUnmarshaledNomsValue(context.Background(), types.Format_7_18, val) + + if err != nil { + t.Fatal("Failed compatibility test") + } + + if !reflect.DeepEqual(tSchema, validated) { + t.Error("Value different after marshalling and unmarshalling.") + } } func TestJSONMarshalling(t *testing.T) { @@ -162,3 +174,74 @@ func TestTypeInfoMarshalling(t *testing.T) { }) } } + + +func validateUnmarshaledNomsValue(ctx context.Context, nbf *types.NomsBinFormat, schemaVal types.Value) (schema.Schema, error) { + var sd testSchemaData + err := marshal.Unmarshal(ctx, nbf, schemaVal, &sd) + + if err != nil { + return nil, err + } + + return sd.decodeSchema() +} + +// testEncodedColumn is a mirror type that helps ensure compatibility between Dolt versions +type testEncodedColumn struct { + Tag uint64 `noms:"tag" json:"tag"` + + // Name is the name of the field + Name string `noms:"name" json:"name"` + + // Kind is the type of the field. See types/noms_kind.go in the liquidata fork for valid values + Kind string `noms:"kind" json:"kind"` + + IsPartOfPK bool `noms:"is_part_of_pk" json:"is_part_of_pk"` + + TypeInfo encodedTypeInfo `noms:"typeinfo" json:"typeinfo"` + + Constraints []encodedConstraint `noms:"col_constraints" json:"col_constraints"` +} + +type testSchemaData struct { + Columns []testEncodedColumn `noms:"columns" json:"columns"` +} + +func (tec testEncodedColumn) decodeColumn() (schema.Column, error) { + var typeInfo typeinfo.TypeInfo + var err error + if tec.TypeInfo.Type != "" { + typeInfo, err = tec.TypeInfo.decodeTypeInfo() + if err != nil { + return schema.Column{}, err + } + } else if tec.Kind != "" { + typeInfo = typeinfo.FromKind(schema.LwrStrToKind[tec.Kind]) + } else { + return schema.Column{}, errors.New("cannot decode column due to unknown schema format") + } + colConstraints := decodeAllColConstraint(tec.Constraints) + return schema.NewColumnWithTypeInfo(tec.Name, tec.Tag, typeInfo, tec.IsPartOfPK, colConstraints...) +} + +func (tsd testSchemaData) decodeSchema() (schema.Schema, error) { + numCols := len(tsd.Columns) + cols := make([]schema.Column, numCols) + + var err error + for i, col := range tsd.Columns { + cols[i], err = col.decodeColumn() + if err != nil { + return nil, err + } + } + + colColl, err := schema.NewColCollection(cols...) + + if err != nil { + return nil, err + } + + return schema.SchemaFromCols(colColl), nil +} \ No newline at end of file From 66265f081c2bcaf6e2a70cca51e7fae39709212b Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Mon, 24 Feb 2020 16:30:07 -0800 Subject: [PATCH 02/19] testing compatibility between versions --- bats/compatibility/compatibility.sh | 58 +++++++++++++++++++++++++++++ bats/compatibility/setup_repo.sh | 20 ++++++++++ bats/compatibility/versions.txt | 3 ++ 3 files changed, 81 insertions(+) create mode 100755 bats/compatibility/compatibility.sh create mode 100755 bats/compatibility/setup_repo.sh create mode 100644 bats/compatibility/versions.txt diff --git a/bats/compatibility/compatibility.sh b/bats/compatibility/compatibility.sh new file mode 100755 index 00000000000..023064983ae --- /dev/null +++ b/bats/compatibility/compatibility.sh @@ -0,0 +1,58 @@ +#!/bin/bash + +if [[ $(git diff --stat) != '' ]]; then + echo "cannot run compatibility test with git working changes" + exit +fi + +starting_branch=$(git rev-parse --abbrev-ref HEAD) + +mkdir "head" +pushd head || exit +dolt init +../setup_repo.sh +popd || exit + +# https://github.com/koalaman/shellcheck/wiki/SC2013 +while IFS= read -r ver +do + echo "checking compatibility for: $ver" + mkdir "$ver" + pushd "$ver" || exit + + pushd ../../../go/dolt/cmd/ || exit + git checkout tags/"$ver" + go install . + popd || exit + + ../setup_repo.sh + + pushd ../head || exit + # ensure we can read the repo + dolt schema show + popd || exit + + popd || exit +done < <(grep -v '^ *#' < versions.txt) + +# go back to initial branch +pushd ../../../go/dolt/cmd/ || exit +git checkout $"starting_branch" +go install . +popd || exit + +while IFS= read -r ver +do + echo "checking compatibility for: $ver" + pushd "$ver" || exit + + # ensure we can read the repo + dolt schema show + + popd || exit + rm -r $"ver" + +done < <(grep -v '^ *#' < versions.txt) + +# cleanup +rm -r head \ No newline at end of file diff --git a/bats/compatibility/setup_repo.sh b/bats/compatibility/setup_repo.sh new file mode 100755 index 00000000000..71286305859 --- /dev/null +++ b/bats/compatibility/setup_repo.sh @@ -0,0 +1,20 @@ +dolt init +# "UPDATE README.md" +dolt sql -q "CREATE TABLE abc(pk BIGINT PRIMARY KEY, a LONGTEXT COMMENT 'tag:694', b DATETIME COMMENT 'tag:2902')" +dolt add . +dolt commit -m "Created table abc" +dolt sql -q "INSERT INTO abc VALUES (1, 'data', '2020-01-13 20:45:18.53558')" +dolt add . +dolt commit -m "Initial data" +dolt checkout -b conflict +dolt sql -q "INSERT INTO abc VALUES (2, 'something', '2020-01-14 20:48:37.13061')" +dolt add . +dolt commit -m "Added something row" +dolt checkout master +dolt checkout -b newcolumn +dolt sql -q "ALTER TABLE abc ADD COLUMN c BIGINT UNSIGNED COMMENT 'tag:4657'" +dolt sql -q "UPDATE abc SET c = 2133 WHERE c IS NULL" +dolt sql -q "INSERT INTO abc VALUES (2, 'something', '2020-01-13 20:48:37.13061', 1132020)" +dolt add . +dolt commit -m "Added something row and column c" +dolt checkout master \ No newline at end of file diff --git a/bats/compatibility/versions.txt b/bats/compatibility/versions.txt new file mode 100644 index 00000000000..fe99400d897 --- /dev/null +++ b/bats/compatibility/versions.txt @@ -0,0 +1,3 @@ +v0.12.0 +v0.13.0 +v0.14.0 \ No newline at end of file From be9c4bbb92fe32dadb50feee68fde8ff76c04932 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Mon, 24 Feb 2020 17:34:12 -0800 Subject: [PATCH 03/19] using fresh env for compatibility tests --- bats/compatibility/runner.sh | 7 ++++ .../compatibility/{ => test}/compatibility.sh | 39 +++++++++++-------- bats/compatibility/{ => test}/setup_repo.sh | 0 bats/compatibility/test/versions.txt | 1 + bats/compatibility/versions.txt | 3 -- 5 files changed, 31 insertions(+), 19 deletions(-) create mode 100755 bats/compatibility/runner.sh rename bats/compatibility/{ => test}/compatibility.sh (62%) rename bats/compatibility/{ => test}/setup_repo.sh (100%) create mode 100644 bats/compatibility/test/versions.txt delete mode 100644 bats/compatibility/versions.txt diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh new file mode 100755 index 00000000000..d5e15db8ef3 --- /dev/null +++ b/bats/compatibility/runner.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +mkdir tmp +cp -r test tmp +cd tmp + +./compatibility.sh \ No newline at end of file diff --git a/bats/compatibility/compatibility.sh b/bats/compatibility/test/compatibility.sh similarity index 62% rename from bats/compatibility/compatibility.sh rename to bats/compatibility/test/compatibility.sh index 023064983ae..f37df48fc18 100755 --- a/bats/compatibility/compatibility.sh +++ b/bats/compatibility/test/compatibility.sh @@ -2,55 +2,62 @@ if [[ $(git diff --stat) != '' ]]; then echo "cannot run compatibility test with git working changes" - exit +# exit fi +echo "one" + starting_branch=$(git rev-parse --abbrev-ref HEAD) -mkdir "head" -pushd head || exit +echo "two" + +if [ -d head ]; then rm -r head; fi +mkdir head && cd head +echo "three" dolt init ../setup_repo.sh -popd || exit +cd .. # https://github.com/koalaman/shellcheck/wiki/SC2013 while IFS= read -r ver do - echo "checking compatibility for: $ver" - mkdir "$ver" - pushd "$ver" || exit - - pushd ../../../go/dolt/cmd/ || exit + pushd ../../go/cmd/dolt || exit git checkout tags/"$ver" go install . popd || exit + if [ -d "$ver" ]; then rm -r head; fi + mkdir "$ver" && cd "$ver" + + echo "creating repo with dolt @ $ver" ../setup_repo.sh pushd ../head || exit # ensure we can read the repo dolt schema show - popd || exit - popd || exit + cd .. + done < <(grep -v '^ *#' < versions.txt) # go back to initial branch -pushd ../../../go/dolt/cmd/ || exit -git checkout $"starting_branch" +pushd ../../go/cmd/dolt/ || exit +git checkout $starting_branch +echo "installing dolt @ $starting_branch" go install . popd || exit while IFS= read -r ver do echo "checking compatibility for: $ver" - pushd "$ver" || exit + cd "$ver" || exit + pwd # ensure we can read the repo dolt schema show - popd || exit - rm -r $"ver" + cd .. || exit +# rm -r $"$ver" done < <(grep -v '^ *#' < versions.txt) diff --git a/bats/compatibility/setup_repo.sh b/bats/compatibility/test/setup_repo.sh similarity index 100% rename from bats/compatibility/setup_repo.sh rename to bats/compatibility/test/setup_repo.sh diff --git a/bats/compatibility/test/versions.txt b/bats/compatibility/test/versions.txt new file mode 100644 index 00000000000..045d7384f09 --- /dev/null +++ b/bats/compatibility/test/versions.txt @@ -0,0 +1 @@ +v0.14.0 \ No newline at end of file diff --git a/bats/compatibility/versions.txt b/bats/compatibility/versions.txt deleted file mode 100644 index fe99400d897..00000000000 --- a/bats/compatibility/versions.txt +++ /dev/null @@ -1,3 +0,0 @@ -v0.12.0 -v0.13.0 -v0.14.0 \ No newline at end of file From a1d1f300e9b4e19e49477feb5137ddc762b67e7e Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Mon, 24 Feb 2020 17:40:02 -0800 Subject: [PATCH 04/19] using fresh env for tests --- bats/compatibility/runner.sh | 7 +++++-- bats/compatibility/{test => test_files}/compatibility.sh | 4 ++-- bats/compatibility/{test => test_files}/setup_repo.sh | 0 bats/compatibility/{test => test_files}/versions.txt | 0 4 files changed, 7 insertions(+), 4 deletions(-) rename bats/compatibility/{test => test_files}/compatibility.sh (93%) rename bats/compatibility/{test => test_files}/setup_repo.sh (100%) rename bats/compatibility/{test => test_files}/versions.txt (100%) diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh index d5e15db8ef3..afc26387f01 100755 --- a/bats/compatibility/runner.sh +++ b/bats/compatibility/runner.sh @@ -1,7 +1,10 @@ #!/bin/bash mkdir tmp -cp -r test tmp +cp test_files/* tmp cd tmp -./compatibility.sh \ No newline at end of file +./compatibility.sh + +cd .. +rm -r tmp \ No newline at end of file diff --git a/bats/compatibility/test/compatibility.sh b/bats/compatibility/test_files/compatibility.sh similarity index 93% rename from bats/compatibility/test/compatibility.sh rename to bats/compatibility/test_files/compatibility.sh index f37df48fc18..5e0ba90b3d6 100755 --- a/bats/compatibility/test/compatibility.sh +++ b/bats/compatibility/test_files/compatibility.sh @@ -21,7 +21,7 @@ cd .. # https://github.com/koalaman/shellcheck/wiki/SC2013 while IFS= read -r ver do - pushd ../../go/cmd/dolt || exit + pushd ../../../go/cmd/dolt || exit git checkout tags/"$ver" go install . popd || exit @@ -41,7 +41,7 @@ do done < <(grep -v '^ *#' < versions.txt) # go back to initial branch -pushd ../../go/cmd/dolt/ || exit +pushd ../../../go/cmd/dolt/ || exit git checkout $starting_branch echo "installing dolt @ $starting_branch" go install . diff --git a/bats/compatibility/test/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh similarity index 100% rename from bats/compatibility/test/setup_repo.sh rename to bats/compatibility/test_files/setup_repo.sh diff --git a/bats/compatibility/test/versions.txt b/bats/compatibility/test_files/versions.txt similarity index 100% rename from bats/compatibility/test/versions.txt rename to bats/compatibility/test_files/versions.txt From 8d805c16f164851eb2982e1d95f6d67cd6c8dcfe Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Mon, 24 Feb 2020 18:44:53 -0800 Subject: [PATCH 05/19] bats tests working, but common is incorrect --- bats/compatibility/.gitignore | 1 + bats/compatibility/runner.sh | 14 ++- .../compatibility/test_files/compatibility.sh | 85 ++++++++++--------- 3 files changed, 55 insertions(+), 45 deletions(-) create mode 100644 bats/compatibility/.gitignore diff --git a/bats/compatibility/.gitignore b/bats/compatibility/.gitignore new file mode 100644 index 00000000000..cf1f6608dd2 --- /dev/null +++ b/bats/compatibility/.gitignore @@ -0,0 +1 @@ +test_env/ \ No newline at end of file diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh index afc26387f01..32659c2ccbd 100755 --- a/bats/compatibility/runner.sh +++ b/bats/compatibility/runner.sh @@ -1,10 +1,16 @@ #!/bin/bash -mkdir tmp -cp test_files/* tmp -cd tmp +test_env="test_env" + +# copy all the test files to take them out of source control +# when we checkout different releases in compatilibility.sh +# we need the test files to remain +rm -r $test_env +mkdir $test_env +cp test_files/* $test_env +cd $test_env ./compatibility.sh cd .. -rm -r tmp \ No newline at end of file +#rm -r $test_env \ No newline at end of file diff --git a/bats/compatibility/test_files/compatibility.sh b/bats/compatibility/test_files/compatibility.sh index 5e0ba90b3d6..0be88a39685 100755 --- a/bats/compatibility/test_files/compatibility.sh +++ b/bats/compatibility/test_files/compatibility.sh @@ -1,65 +1,68 @@ #!/bin/bash -if [[ $(git diff --stat) != '' ]]; then - echo "cannot run compatibility test with git working changes" -# exit -fi - -echo "one" +dolt_dir="../../../go/cmd/dolt/" starting_branch=$(git rev-parse --abbrev-ref HEAD) +top_dir=$(pwd) + +function build_dolt() { + # go back to initial branch + pushd "$dolt_dir" || exit + git checkout "$1" + echo "installing dolt @ $1" + go install . + popd || exit +} + +function setup_dir() { + echo "creating repo with dolt @ $1" + if [ -d "$1" ]; then rm -r "$1"; fi + mkdir "$1" + pushd "$1" || exit + "$top_dir"/setup_repo.sh + popd || exit +} -echo "two" +function run_bats_tests() { + pushd "$1" || exit + cp "$top_dir"/../../*bats . + cp -r "$top_dir"/../../helper . + bats . + popd || exit +} -if [ -d head ]; then rm -r head; fi -mkdir head && cd head -echo "three" -dolt init -../setup_repo.sh -cd .. +if [[ $(git diff --stat) != '' ]]; then + echo "cannot run compatibility test with git working changes" + exit +fi + +setup_dir "head" -# https://github.com/koalaman/shellcheck/wiki/SC2013 while IFS= read -r ver do - pushd ../../../go/cmd/dolt || exit - git checkout tags/"$ver" - go install . - popd || exit - if [ -d "$ver" ]; then rm -r head; fi - mkdir "$ver" && cd "$ver" + build_dolt "$ver" + setup_dir "$ver" + run_bats_tests "$ver" - echo "creating repo with dolt @ $ver" - ../setup_repo.sh - - pushd ../head || exit # ensure we can read the repo + pushd head || exit dolt schema show - - cd .. + popd || exit done < <(grep -v '^ *#' < versions.txt) -# go back to initial branch -pushd ../../../go/cmd/dolt/ || exit -git checkout $starting_branch -echo "installing dolt @ $starting_branch" -go install . -popd || exit +# now build dolt@head and make sure we can read +# all of the legacy repositories we created +build_dolt "$starting_branch" while IFS= read -r ver do - echo "checking compatibility for: $ver" - cd "$ver" || exit - pwd + echo "checking compatibility for: $ver" + pushd "$ver" || exit # ensure we can read the repo dolt schema show - - cd .. || exit -# rm -r $"$ver" + popd || exit done < <(grep -v '^ *#' < versions.txt) - -# cleanup -rm -r head \ No newline at end of file From 6ac99944c246e06ac834e0d13751fe17af0109f7 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Tue, 25 Feb 2020 10:23:48 -0800 Subject: [PATCH 06/19] adapted bats tests for compatibility testing --- bats/compatibility/README.md | 0 .../compatibility/test_files/bats/common.bash | 55 ++++++++++++ .../test_files/bats/common.bash.bats | 28 ++++++ .../test_files/bats/compatibility.bats | 18 ++++ .../compatibility/test_files/compatibility.sh | 18 ++-- .../{versions.txt => dolt_versions.txt} | 0 bats/compatibility/test_files/setup_repo.sh | 88 ++++++++++++++++--- 7 files changed, 184 insertions(+), 23 deletions(-) create mode 100644 bats/compatibility/README.md create mode 100644 bats/compatibility/test_files/bats/common.bash create mode 100644 bats/compatibility/test_files/bats/common.bash.bats create mode 100755 bats/compatibility/test_files/bats/compatibility.bats rename bats/compatibility/test_files/{versions.txt => dolt_versions.txt} (100%) diff --git a/bats/compatibility/README.md b/bats/compatibility/README.md new file mode 100644 index 00000000000..e69de29bb2d diff --git a/bats/compatibility/test_files/bats/common.bash b/bats/compatibility/test_files/bats/common.bash new file mode 100644 index 00000000000..4a098a962bf --- /dev/null +++ b/bats/compatibility/test_files/bats/common.bash @@ -0,0 +1,55 @@ +load helper/windows-compat + +if [ -z "$BATS_TMPDIR" ]; then + export BATS_TMPDIR=$HOME/batstmp/ + mkdir $BATS_TMPDIR +fi + +# nativebatsdir() { echo `nativepath $BATS_TEST_DIRNAME/$1`; } +# batshelper() { echo `nativebatsdir helper/$1`; } + +stash_current_dolt_user() { + export STASHED_DOLT_USER_NAME=`dolt config --global --get user.name` + export STASHED_DOLT_USER_EMAIL=`dolt config --global --get user.email` +} + +restore_stashed_dolt_user() { + dolt config --global --add user.name "$STASHED_DOLT_USER_NAME" + dolt config --global --add user.email "$STASHED_DOLT_USER_EMAIL" + unset STASHED_DOLT_USER_NAME STASHED_DOLT_USER_EMAIL +} + +set_dolt_user() { + dolt config --global --add user.name "$1" > /dev/null 2>&1 + dolt config --global --add user.email "$2" > /dev/null 2>&1 +} + +current_dolt_user_name() { + dolt config --global --get user.name +} + +current_dolt_user_email() { + dolt config --global --get user.email +} + +setup_no_dolt_init() { + export PATH=$PATH:~/go/bin + cd $BATS_TMPDIR + # Append the directory name with the pid of the calling process so + # multiple tests can be run in parallel on the same machine + mkdir "dolt-repo-$$" + cd "dolt-repo-$$" +} + +setup_common() { + # setup_no_dolt_init + # dolt init +} + +teardown_common() { + rm -rf "$BATS_TMPDIR/dolt-repo-$$" +} + +# nativevar DOLT_ROOT_PATH $BATS_TMPDIR/config-$$ /p +dolt config --global --add metrics.disabled true > /dev/null 2>&1 +set_dolt_user "Bats Tests" "bats@email.fake" diff --git a/bats/compatibility/test_files/bats/common.bash.bats b/bats/compatibility/test_files/bats/common.bash.bats new file mode 100644 index 00000000000..b0470773612 --- /dev/null +++ b/bats/compatibility/test_files/bats/common.bash.bats @@ -0,0 +1,28 @@ +#!/usr/bin/env bats +load $BATS_TEST_DIRNAME/common.bash + +setup() { + setup_common +} + +teardown() { + teardown_common +} + +@test "stashing, setting, and restoring dolt users" { + stash_current_dolt_user + [ "$STASHED_DOLT_USER_NAME" = "Bats Tests" ] + [ "$STASHED_DOLT_USER_EMAIL" = "bats@email.fake" ] + + set_dolt_user "Bats Tests 1" "bats-1@email.fake" + NAME=`current_dolt_user_name` + EMAIL=`current_dolt_user_email` + [ "$NAME" = "Bats Tests 1" ] + [ "$EMAIL" = "bats-1@email.fake" ] + + restore_stashed_dolt_user + NAME=`current_dolt_user_name` + EMAIL=`current_dolt_user_email` + [ "$NAME" = "Bats Tests" ] + [ "$EMAIL" = "bats@email.fake" ] +} diff --git a/bats/compatibility/test_files/bats/compatibility.bats b/bats/compatibility/test_files/bats/compatibility.bats new file mode 100755 index 00000000000..d060d238912 --- /dev/null +++ b/bats/compatibility/test_files/bats/compatibility.bats @@ -0,0 +1,18 @@ +#!/usr/bin/env bats +load $BATS_TEST_DIRNAME/helper/common.bash + +setup() { + setup_common +} + +teardown() { + teardown_common +} + +@test "smoke test" { + run dolt status + [ "$status" -eq 0 ] + + run dolt branch + [ "$status" -eq 0 ] +} \ No newline at end of file diff --git a/bats/compatibility/test_files/compatibility.sh b/bats/compatibility/test_files/compatibility.sh index 0be88a39685..6be96297e4a 100755 --- a/bats/compatibility/test_files/compatibility.sh +++ b/bats/compatibility/test_files/compatibility.sh @@ -1,5 +1,11 @@ #!/bin/bash + +if [[ $(git diff --stat) != '' ]]; then + echo "cannot run compatibility test with git working changes" + exit +fi + dolt_dir="../../../go/cmd/dolt/" starting_branch=$(git rev-parse --abbrev-ref HEAD) @@ -25,17 +31,11 @@ function setup_dir() { function run_bats_tests() { pushd "$1" || exit - cp "$top_dir"/../../*bats . - cp -r "$top_dir"/../../helper . + cp -r "$top_dir"/bats . bats . popd || exit } -if [[ $(git diff --stat) != '' ]]; then - echo "cannot run compatibility test with git working changes" - exit -fi - setup_dir "head" while IFS= read -r ver @@ -50,7 +50,7 @@ do dolt schema show popd || exit -done < <(grep -v '^ *#' < versions.txt) +done < <(grep -v '^ *#' < dolt_versions.txt) # now build dolt@head and make sure we can read # all of the legacy repositories we created @@ -65,4 +65,4 @@ do dolt schema show popd || exit -done < <(grep -v '^ *#' < versions.txt) +done < <(grep -v '^ *#' < dolt_versions.txt) diff --git a/bats/compatibility/test_files/versions.txt b/bats/compatibility/test_files/dolt_versions.txt similarity index 100% rename from bats/compatibility/test_files/versions.txt rename to bats/compatibility/test_files/dolt_versions.txt diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index 71286305859..53b6a37a80f 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -1,20 +1,80 @@ +#!/bin/bash + dolt init -# "UPDATE README.md" -dolt sql -q "CREATE TABLE abc(pk BIGINT PRIMARY KEY, a LONGTEXT COMMENT 'tag:694', b DATETIME COMMENT 'tag:2902')" + +dolt sql < Date: Tue, 25 Feb 2020 11:08:45 -0800 Subject: [PATCH 07/19] basic bats tests working --- bats/compatibility/runner.sh | 2 +- .../test_files/bats/common.bash.bats | 2 +- .../test_files/bats/{ => helper}/common.bash | 4 +- .../bats/helper/windows-compat.bash | 24 ++++++ .../compatibility/test_files/compatibility.sh | 17 ++-- bats/compatibility/test_files/setup_repo.sh | 78 +++++++++---------- 6 files changed, 74 insertions(+), 53 deletions(-) rename bats/compatibility/test_files/bats/{ => helper}/common.bash (94%) create mode 100644 bats/compatibility/test_files/bats/helper/windows-compat.bash diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh index 32659c2ccbd..a21afd83161 100755 --- a/bats/compatibility/runner.sh +++ b/bats/compatibility/runner.sh @@ -7,7 +7,7 @@ test_env="test_env" # we need the test files to remain rm -r $test_env mkdir $test_env -cp test_files/* $test_env +cp -r test_files/* $test_env cd $test_env ./compatibility.sh diff --git a/bats/compatibility/test_files/bats/common.bash.bats b/bats/compatibility/test_files/bats/common.bash.bats index b0470773612..b3bd83f08b3 100644 --- a/bats/compatibility/test_files/bats/common.bash.bats +++ b/bats/compatibility/test_files/bats/common.bash.bats @@ -1,5 +1,5 @@ #!/usr/bin/env bats -load $BATS_TEST_DIRNAME/common.bash +load $BATS_TEST_DIRNAME/helper/common.bash setup() { setup_common diff --git a/bats/compatibility/test_files/bats/common.bash b/bats/compatibility/test_files/bats/helper/common.bash similarity index 94% rename from bats/compatibility/test_files/bats/common.bash rename to bats/compatibility/test_files/bats/helper/common.bash index 4a098a962bf..23bfa1abd0d 100644 --- a/bats/compatibility/test_files/bats/common.bash +++ b/bats/compatibility/test_files/bats/helper/common.bash @@ -42,12 +42,14 @@ setup_no_dolt_init() { } setup_common() { + echo "setup" # setup_no_dolt_init # dolt init } teardown_common() { - rm -rf "$BATS_TMPDIR/dolt-repo-$$" + echo "teardown" +# rm -rf "$BATS_TMPDIR/dolt-repo-$$" } # nativevar DOLT_ROOT_PATH $BATS_TMPDIR/config-$$ /p diff --git a/bats/compatibility/test_files/bats/helper/windows-compat.bash b/bats/compatibility/test_files/bats/helper/windows-compat.bash new file mode 100644 index 00000000000..3a7049eccc9 --- /dev/null +++ b/bats/compatibility/test_files/bats/helper/windows-compat.bash @@ -0,0 +1,24 @@ +nativepath() { echo "$1"; } +nativevar() { eval export "$1"="$2"; } +skiponwindows() { :; } + +IS_WINDOWS=false + +if [ -d /mnt/c/Windows/System32 ]; then + IS_WINDOWS=true + if [ ! -d /mnt/c/batstmp ]; then + mkdir /mnt/c/batstmp + fi + BATS_TMPDIR=`TMPDIR=/mnt/c/batstmp mktemp -d -t dolt-bats-tests-XXXXXX` + export BATS_TMPDIR + nativepath() { + wslpath -w "$1" + } + nativevar() { + eval export "$1"="$2" + export WSLENV="$1$3" + } + skiponwindows() { + skip "$1" + } +fi diff --git a/bats/compatibility/test_files/compatibility.sh b/bats/compatibility/test_files/compatibility.sh index 6be96297e4a..02126b9951c 100755 --- a/bats/compatibility/test_files/compatibility.sh +++ b/bats/compatibility/test_files/compatibility.sh @@ -26,12 +26,13 @@ function setup_dir() { mkdir "$1" pushd "$1" || exit "$top_dir"/setup_repo.sh + cp -r "$top_dir"/bats/* . + ls -l *bats popd || exit } function run_bats_tests() { pushd "$1" || exit - cp -r "$top_dir"/bats . bats . popd || exit } @@ -43,26 +44,20 @@ do build_dolt "$ver" setup_dir "$ver" - run_bats_tests "$ver" # ensure we can read the repo - pushd head || exit - dolt schema show - popd || exit + # create with dolt @ head + run_bats_tests head done < <(grep -v '^ *#' < dolt_versions.txt) -# now build dolt@head and make sure we can read +# now build dolt @ head and make sure we can read # all of the legacy repositories we created build_dolt "$starting_branch" while IFS= read -r ver do - echo "checking compatibility for: $ver" - pushd "$ver" || exit - # ensure we can read the repo - dolt schema show - popd || exit + run_bats_tests "$ver" done < <(grep -v '^ *#' < dolt_versions.txt) diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index 53b6a37a80f..aa3448ba4f9 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -11,9 +11,9 @@ CREATE TABLE abc ( x BIGINT COMMENT 'tag:103', PRIMARY KEY (pk) ); -INSERT INTO abc VALUES (0, 'asdf', 1.1); -INSERT INTO abc VALUES (1, 'asdf', 1.1); -INSERT INTO abc VALUES (2, 'asdf', 1.1); +INSERT INTO abc VALUES (0, 'asdf', 1.1, 0, 0); +INSERT INTO abc VALUES (1, 'asdf', 1.1, 0, 0); +INSERT INTO abc VALUES (2, 'asdf', 1.1, 0, 0); CREATE TABLE foo ( pk BIGINT NOT NULL COMMENT 'tag:1', PRIMARY KEY (pk) @@ -30,42 +30,42 @@ dolt commit -m "initialized data" dolt branch init dolt branch other -dolt sql < Date: Tue, 25 Feb 2020 14:45:51 -0800 Subject: [PATCH 08/19] added smoke tests --- .../test_files/bats/compatibility.bats | 18 -------- .../test_files/bats/dolt_smoke_tests.bats | 45 +++++++++++++++++++ .../test_files/bats/helper/common.bash | 7 +-- .../compatibility/test_files/bats/schema.bats | 41 +++++++++++++++++ .../compatibility/test_files/compatibility.sh | 28 +++++++----- .../test_files/dolt_versions.txt | 1 + bats/compatibility/test_files/setup_repo.sh | 7 +-- 7 files changed, 109 insertions(+), 38 deletions(-) delete mode 100755 bats/compatibility/test_files/bats/compatibility.bats create mode 100755 bats/compatibility/test_files/bats/dolt_smoke_tests.bats create mode 100644 bats/compatibility/test_files/bats/schema.bats diff --git a/bats/compatibility/test_files/bats/compatibility.bats b/bats/compatibility/test_files/bats/compatibility.bats deleted file mode 100755 index d060d238912..00000000000 --- a/bats/compatibility/test_files/bats/compatibility.bats +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/env bats -load $BATS_TEST_DIRNAME/helper/common.bash - -setup() { - setup_common -} - -teardown() { - teardown_common -} - -@test "smoke test" { - run dolt status - [ "$status" -eq 0 ] - - run dolt branch - [ "$status" -eq 0 ] -} \ No newline at end of file diff --git a/bats/compatibility/test_files/bats/dolt_smoke_tests.bats b/bats/compatibility/test_files/bats/dolt_smoke_tests.bats new file mode 100755 index 00000000000..8df08f4437b --- /dev/null +++ b/bats/compatibility/test_files/bats/dolt_smoke_tests.bats @@ -0,0 +1,45 @@ +#!/usr/bin/env bats +load $BATS_TEST_DIRNAME/helper/common.bash + +setup() { + setup_common +} + +teardown() { + teardown_common +} + +@test "dolt version" { + run dolt version + [ "$status" -eq 0 ] + regex='dolt version [0-9]+.[0-9]+.[0-9]+' + [[ "$output" =~ $regex ]] || false +} + +@test "dolt status" { + run dolt status + [ "$status" -eq 0 ] + [[ "$output" =~ "On branch master" ]] || false + [[ "$output" =~ "nothing to commit, working tree clean" ]] || false +} + +@test "dolt ls" { + run dolt ls + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "Tables in working set:" ]] || false +} + +@test "dolt branch" { + run dolt branch + [ "$status" -eq 0 ] +} + +@test "dolt diff" { + run dolt diff + [ "$status" -eq 0 ] +} + +@test "dolt sql select *" { + run dolt sql -q 'select * from abc;' + [ "$status" -eq 0 ] +} \ No newline at end of file diff --git a/bats/compatibility/test_files/bats/helper/common.bash b/bats/compatibility/test_files/bats/helper/common.bash index 23bfa1abd0d..c64c14c90d7 100644 --- a/bats/compatibility/test_files/bats/helper/common.bash +++ b/bats/compatibility/test_files/bats/helper/common.bash @@ -42,14 +42,11 @@ setup_no_dolt_init() { } setup_common() { - echo "setup" - # setup_no_dolt_init - # dolt init + echo "setup" > /dev/null } teardown_common() { - echo "teardown" -# rm -rf "$BATS_TMPDIR/dolt-repo-$$" + echo "teardown" > /dev/null } # nativevar DOLT_ROOT_PATH $BATS_TMPDIR/config-$$ /p diff --git a/bats/compatibility/test_files/bats/schema.bats b/bats/compatibility/test_files/bats/schema.bats new file mode 100644 index 00000000000..b3d8361e7e3 --- /dev/null +++ b/bats/compatibility/test_files/bats/schema.bats @@ -0,0 +1,41 @@ +#!/usr/bin/env bats +load $BATS_TEST_DIRNAME/helper/common.bash + +setup() { + setup_common +} + +teardown() { + teardown_common +} + +@test "dolt schema show" { + dolt schema show + run dolt schema show abc + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "abc @ working" ]] || false + [[ "${lines[1]}" =~ "CREATE TABLE \`abc\` (" ]] || false + [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:0'," ]] || false + [[ "${lines[3]}" =~ " \`a\` LONGTEXT COMMENT 'tag:100'," ]] || false + [[ "${lines[4]}" =~ " \`b\` DOUBLE COMMENT 'tag:101'," ]] || false + [[ "${lines[5]}" =~ " \`w\` BIGINT COMMENT 'tag:102'," ]] || false + [[ "${lines[6]}" =~ " \`x\` BIGINT COMMENT 'tag:103'," ]] || false + [[ "${lines[7]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false + [[ "${lines[8]}" =~ ");" ]] || false + + run dolt schema show bar + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "bar @ working" ]] || false + [[ "${lines[1]}" =~ "CREATE TABLE \`bar\` (" ]] || false + [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:2'," ]] || false + [[ "${lines[3]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false + [[ "${lines[4]}" =~ ");" ]] || false + + run dolt schema show foo + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "foo @ working" ]] || false + [[ "${lines[1]}" =~ "CREATE TABLE \`foo\` (" ]] || false + [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:1'," ]] || false + [[ "${lines[3]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false + [[ "${lines[4]}" =~ ");" ]] || false +} \ No newline at end of file diff --git a/bats/compatibility/test_files/compatibility.sh b/bats/compatibility/test_files/compatibility.sh index 02126b9951c..3961be11925 100755 --- a/bats/compatibility/test_files/compatibility.sh +++ b/bats/compatibility/test_files/compatibility.sh @@ -13,28 +13,29 @@ top_dir=$(pwd) function build_dolt() { # go back to initial branch - pushd "$dolt_dir" || exit - git checkout "$1" - echo "installing dolt @ $1" + pushd "$dolt_dir" > /dev/null || exit + git checkout "$1" > /dev/null go install . - popd || exit + popd > /dev/null || exit } function setup_dir() { - echo "creating repo with dolt @ $1" if [ -d "$1" ]; then rm -r "$1"; fi mkdir "$1" - pushd "$1" || exit - "$top_dir"/setup_repo.sh + pushd "$1" > /dev/null || exit + "$top_dir"/setup_repo.sh > /dev/null cp -r "$top_dir"/bats/* . - ls -l *bats - popd || exit + popd > /dev/null || exit } function run_bats_tests() { - pushd "$1" || exit + pushd "$1" > /dev/null || exit + cwd=$(pwd) + hash=$(git rev-parse HEAD) + echo "testing dolt @ $hash against repo in $cwd" bats . - popd || exit + echo + popd > /dev/null || exit } setup_dir "head" @@ -47,6 +48,8 @@ do # ensure we can read the repo # create with dolt @ head + ver_hash=$(git rev-parse HEAD) + echo "hash for dolt @ $ver: $ver_hash" run_bats_tests head done < <(grep -v '^ *#' < dolt_versions.txt) @@ -57,7 +60,8 @@ build_dolt "$starting_branch" while IFS= read -r ver do - + head_hash=$(git rev-parse HEAD) + echo "hash for dolt @ head: $head_hash" run_bats_tests "$ver" done < <(grep -v '^ *#' < dolt_versions.txt) diff --git a/bats/compatibility/test_files/dolt_versions.txt b/bats/compatibility/test_files/dolt_versions.txt index 045d7384f09..dcd458281f2 100644 --- a/bats/compatibility/test_files/dolt_versions.txt +++ b/bats/compatibility/test_files/dolt_versions.txt @@ -1 +1,2 @@ +v0.13.0 v0.14.0 \ No newline at end of file diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index aa3448ba4f9..e0fca1dce3f 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -6,7 +6,7 @@ dolt sql < Date: Tue, 25 Feb 2020 16:05:51 -0800 Subject: [PATCH 09/19] added data tests --- .../test_files/bats/compatibility.bats | 150 ++++++++++++++++++ .../test_files/bats/dolt_smoke_tests.bats | 45 ------ .../compatibility/test_files/bats/schema.bats | 41 ----- .../compatibility/test_files/compatibility.sh | 2 +- bats/compatibility/test_files/setup_repo.sh | 80 +++------- 5 files changed, 172 insertions(+), 146 deletions(-) create mode 100755 bats/compatibility/test_files/bats/compatibility.bats delete mode 100755 bats/compatibility/test_files/bats/dolt_smoke_tests.bats delete mode 100644 bats/compatibility/test_files/bats/schema.bats diff --git a/bats/compatibility/test_files/bats/compatibility.bats b/bats/compatibility/test_files/bats/compatibility.bats new file mode 100755 index 00000000000..e34fded83c4 --- /dev/null +++ b/bats/compatibility/test_files/bats/compatibility.bats @@ -0,0 +1,150 @@ +#!/usr/bin/env bats +load $BATS_TEST_DIRNAME/helper/common.bash + +setup() { + setup_common +} + +teardown() { + teardown_common +} +clear +@test "dolt version" { + run dolt version + [ "$status" -eq 0 ] + regex='dolt version [0-9]+.[0-9]+.[0-9]+' + [[ "$output" =~ $regex ]] || false +} + +@test "dolt status" { + run dolt status + [ "$status" -eq 0 ] + [[ "$output" =~ "On branch master" ]] || false + [[ "$output" =~ "nothing to commit, working tree clean" ]] || false +} + +@test "dolt ls" { + run dolt ls + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "Tables in working set:" ]] || false +} + +@test "dolt branch" { + run dolt branch + [ "$status" -eq 0 ] +} + +@test "dolt diff" { + run dolt diff + [ "$status" -eq 0 ] +} + +@test "dolt schema show on branch init" { + run dolt checkout init + [ "$status" -eq 0 ] + + dolt schema show + run dolt schema show abc + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "abc @ working" ]] || false + [[ "${lines[1]}" =~ "CREATE TABLE \`abc\` (" ]] || false + [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:0'," ]] || false + [[ "${lines[3]}" =~ " \`a\` LONGTEXT COMMENT 'tag:100'," ]] || false + [[ "${lines[4]}" =~ " \`b\` DOUBLE COMMENT 'tag:101'," ]] || false + [[ "${lines[5]}" =~ " \`w\` BIGINT COMMENT 'tag:102'," ]] || false + [[ "${lines[6]}" =~ " \`x\` BIGINT COMMENT 'tag:103'," ]] || false + [[ "${lines[7]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false + [[ "${lines[8]}" =~ ");" ]] || false +} + +@test "dolt sql 'select * from abc' on branch init" { + # checkout we're on the right branch + run dolt status + [ "$status" -eq 0 ] + [[ "$output" =~ "On branch init" ]] || false + [[ "$output" =~ "nothing to commit, working tree clean" ]] || false + + dolt sql -q 'select * from abc;' + run dolt sql -q 'select * from abc;' + [ "$status" -eq 0 ] + + + [[ "${lines[1]}" =~ "| pk | a | b | w | x |" ]] || false + [[ "${lines[2]}" =~ "+----+------+-----+---+---+" ]] || false + [[ "${lines[3]}" =~ "| 0 | asdf | 1.1 | 0 | 0 |" ]] || false + [[ "${lines[4]}" =~ "| 1 | asdf | 1.1 | 0 | 0 |" ]] || false + [[ "${lines[5]}" =~ "| 2 | asdf | 1.1 | 0 | 0 |" ]] || false +} + +@test "dolt schema show on branch master" { + run dolt checkout master + [ "$status" -eq 0 ] + + dolt schema show + run dolt schema show abc + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "abc @ working" ]] || false + [[ "${lines[1]}" =~ "CREATE TABLE \`abc\` (" ]] || false + [[ "${lines[2]}" =~ "\`pk\` BIGINT NOT NULL COMMENT 'tag:0'," ]] || false + [[ "${lines[3]}" =~ "\`a\` LONGTEXT COMMENT 'tag:100'," ]] || false + [[ "${lines[4]}" =~ "\`b\` DOUBLE COMMENT 'tag:101'," ]] || false + [[ "${lines[5]}" =~ "\`x\` BIGINT COMMENT 'tag:103'," ]] || false + [[ "${lines[6]}" =~ "\`y\` BIGINT COMMENT 'tag:104'," ]] || false + [[ "${lines[7]}" =~ "PRIMARY KEY (\`pk\`)" ]] || false + [[ "${lines[8]}" =~ ");" ]] || false +} + + +@test "dolt sql 'select * from abc' on branch master" { + # checkout we're on the right branch + run dolt status + [ "$status" -eq 0 ] + [[ "$output" =~ "On branch master" ]] || false + [[ "$output" =~ "nothing to commit, working tree clean" ]] || false + + dolt sql -q 'select * from abc;' + run dolt sql -q 'select * from abc;' + [ "$status" -eq 0 ] + [[ "${lines[1]}" =~ "| pk | a | b | x | y |" ]] || false + [[ "${lines[2]}" =~ "+----+------+-----+---+--------+" ]] || false + [[ "${lines[3]}" =~ "| 0 | asdf | 1.1 | 0 | |" ]] || false + [[ "${lines[4]}" =~ "| 2 | asdf | 1.1 | 0 | |" ]] || false + [[ "${lines[5]}" =~ "| 3 | data | 1.1 | 0 | |" ]] || false +} + +@test "dolt schema show on branch other" { + run dolt checkout other + [ "$status" -eq 0 ] + + dolt schema show + run dolt schema show abc + [ "$status" -eq 0 ] + [[ "${lines[0]}" =~ "abc @ working" ]] || false + [[ "${lines[1]}" =~ "CREATE TABLE \`abc\` (" ]] || false + [[ "${lines[2]}" =~ "\`pk\` BIGINT NOT NULL COMMENT 'tag:0'," ]] || false + [[ "${lines[3]}" =~ "\`a\` LONGTEXT COMMENT 'tag:100'," ]] || false + [[ "${lines[4]}" =~ "\`b\` DOUBLE COMMENT 'tag:101'," ]] || false + [[ "${lines[5]}" =~ "\`w\` BIGINT COMMENT 'tag:102'," ]] || false + [[ "${lines[6]}" =~ "\`z\` BIGINT COMMENT 'tag:105'," ]] || false + [[ "${lines[7]}" =~ "PRIMARY KEY (\`pk\`)" ]] || false + [[ "${lines[8]}" =~ ");" ]] || false +} + +@test "dolt sql 'select * from abc' on branch other" { + # checkout we're on the right branch + run dolt status + [ "$status" -eq 0 ] + [[ "$output" =~ "On branch other" ]] || false + [[ "$output" =~ "nothing to commit, working tree clean" ]] || false + + dolt sql -q 'select * from abc;' + run dolt sql -q 'select * from abc;' + [ "$status" -eq 0 ] + [[ "${lines[1]}" =~ "| pk | a | b | w | z |" ]] || false + [[ "${lines[2]}" =~ "+----+------+-----+---+--------+" ]] || false + [[ "${lines[3]}" =~ "| 0 | asdf | 1.1 | 0 | |" ]] || false + [[ "${lines[4]}" =~ "| 1 | asdf | 1.1 | 0 | |" ]] || false + [[ "${lines[5]}" =~ "| 4 | data | 1.1 | 0 | |" ]] || false + + dolt checkout master +} \ No newline at end of file diff --git a/bats/compatibility/test_files/bats/dolt_smoke_tests.bats b/bats/compatibility/test_files/bats/dolt_smoke_tests.bats deleted file mode 100755 index 8df08f4437b..00000000000 --- a/bats/compatibility/test_files/bats/dolt_smoke_tests.bats +++ /dev/null @@ -1,45 +0,0 @@ -#!/usr/bin/env bats -load $BATS_TEST_DIRNAME/helper/common.bash - -setup() { - setup_common -} - -teardown() { - teardown_common -} - -@test "dolt version" { - run dolt version - [ "$status" -eq 0 ] - regex='dolt version [0-9]+.[0-9]+.[0-9]+' - [[ "$output" =~ $regex ]] || false -} - -@test "dolt status" { - run dolt status - [ "$status" -eq 0 ] - [[ "$output" =~ "On branch master" ]] || false - [[ "$output" =~ "nothing to commit, working tree clean" ]] || false -} - -@test "dolt ls" { - run dolt ls - [ "$status" -eq 0 ] - [[ "${lines[0]}" =~ "Tables in working set:" ]] || false -} - -@test "dolt branch" { - run dolt branch - [ "$status" -eq 0 ] -} - -@test "dolt diff" { - run dolt diff - [ "$status" -eq 0 ] -} - -@test "dolt sql select *" { - run dolt sql -q 'select * from abc;' - [ "$status" -eq 0 ] -} \ No newline at end of file diff --git a/bats/compatibility/test_files/bats/schema.bats b/bats/compatibility/test_files/bats/schema.bats deleted file mode 100644 index b3d8361e7e3..00000000000 --- a/bats/compatibility/test_files/bats/schema.bats +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bats -load $BATS_TEST_DIRNAME/helper/common.bash - -setup() { - setup_common -} - -teardown() { - teardown_common -} - -@test "dolt schema show" { - dolt schema show - run dolt schema show abc - [ "$status" -eq 0 ] - [[ "${lines[0]}" =~ "abc @ working" ]] || false - [[ "${lines[1]}" =~ "CREATE TABLE \`abc\` (" ]] || false - [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:0'," ]] || false - [[ "${lines[3]}" =~ " \`a\` LONGTEXT COMMENT 'tag:100'," ]] || false - [[ "${lines[4]}" =~ " \`b\` DOUBLE COMMENT 'tag:101'," ]] || false - [[ "${lines[5]}" =~ " \`w\` BIGINT COMMENT 'tag:102'," ]] || false - [[ "${lines[6]}" =~ " \`x\` BIGINT COMMENT 'tag:103'," ]] || false - [[ "${lines[7]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false - [[ "${lines[8]}" =~ ");" ]] || false - - run dolt schema show bar - [ "$status" -eq 0 ] - [[ "${lines[0]}" =~ "bar @ working" ]] || false - [[ "${lines[1]}" =~ "CREATE TABLE \`bar\` (" ]] || false - [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:2'," ]] || false - [[ "${lines[3]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false - [[ "${lines[4]}" =~ ");" ]] || false - - run dolt schema show foo - [ "$status" -eq 0 ] - [[ "${lines[0]}" =~ "foo @ working" ]] || false - [[ "${lines[1]}" =~ "CREATE TABLE \`foo\` (" ]] || false - [[ "${lines[2]}" =~ " \`pk\` BIGINT NOT NULL COMMENT 'tag:1'," ]] || false - [[ "${lines[3]}" =~ " PRIMARY KEY (\`pk\`)" ]] || false - [[ "${lines[4]}" =~ ");" ]] || false -} \ No newline at end of file diff --git a/bats/compatibility/test_files/compatibility.sh b/bats/compatibility/test_files/compatibility.sh index 3961be11925..fe3c7b25be9 100755 --- a/bats/compatibility/test_files/compatibility.sh +++ b/bats/compatibility/test_files/compatibility.sh @@ -23,7 +23,7 @@ function setup_dir() { if [ -d "$1" ]; then rm -r "$1"; fi mkdir "$1" pushd "$1" > /dev/null || exit - "$top_dir"/setup_repo.sh > /dev/null + "$top_dir"/setup_repo.sh > setup_repo.log cp -r "$top_dir"/bats/* . popd > /dev/null || exit } diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index e0fca1dce3f..55d912ca636 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -14,68 +14,30 @@ CREATE TABLE abc ( INSERT INTO abc VALUES (0, 'asdf', 1.1, 0, 0); INSERT INTO abc VALUES (1, 'asdf', 1.1, 0, 0); INSERT INTO abc VALUES (2, 'asdf', 1.1, 0, 0); -CREATE TABLE foo ( - pk BIGINT NOT NULL COMMENT 'tag:1', - PRIMARY KEY (pk) -); -INSERT INTO foo VALUES (0); -CREATE TABLE bar ( - pk BIGINT NOT NULL COMMENT 'tag:2', - PRIMARY KEY (pk) -); -INSERT INTO bar VALUES (0); SQL dolt add . dolt commit -m "initialized data" dolt branch init -# dolt branch other -# dolt sql < Date: Tue, 25 Feb 2020 16:36:32 -0800 Subject: [PATCH 10/19] cleanup --- bats/compatibility/.gitignore | 2 +- bats/compatibility/runner.sh | 74 +++++++++++++++++-- .../test_files/bats/common.bash.bats | 28 ------- .../test_files/bats/helper/common.bash | 38 ---------- .../compatibility/test_files/compatibility.sh | 67 ----------------- bats/compatibility/test_files/setup_repo.sh | 19 ++++- 6 files changed, 88 insertions(+), 140 deletions(-) delete mode 100644 bats/compatibility/test_files/bats/common.bash.bats delete mode 100755 bats/compatibility/test_files/compatibility.sh diff --git a/bats/compatibility/.gitignore b/bats/compatibility/.gitignore index cf1f6608dd2..f5c7eac3d9e 100644 --- a/bats/compatibility/.gitignore +++ b/bats/compatibility/.gitignore @@ -1 +1 @@ -test_env/ \ No newline at end of file +env_test/ diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh index a21afd83161..0ea9873557e 100755 --- a/bats/compatibility/runner.sh +++ b/bats/compatibility/runner.sh @@ -1,16 +1,80 @@ #!/bin/bash -test_env="test_env" +if [[ $(git diff --stat) != '' ]]; then + echo "cannot run compatibility tests with git working changes" + exit +fi + +function build_dolt() { + pushd "$dolt_dir" > /dev/null || exit + git checkout "$1" > /dev/null + go install . + popd > /dev/null || exit +} + +function setup_dir() { + if [ -d "$1" ]; then rm -r "$1"; fi + mkdir "$1" + pushd "$1" > /dev/null || exit + "$top_dir/setup_repo.sh" > setup_repo.log + cp -r "$top_dir"/bats/* . + popd > /dev/null || exit +} + +function run_bats_tests() { + pushd "$1" > /dev/null || exit + cwd=$(pwd) + hash=$(git rev-parse HEAD) + echo "testing dolt @ $hash against repo in $cwd" + bats . + echo + popd > /dev/null || exit +} + # copy all the test files to take them out of source control # when we checkout different releases in compatilibility.sh # we need the test files to remain +test_env="env_test" rm -r $test_env mkdir $test_env cp -r test_files/* $test_env -cd $test_env +pushd $test_env > /dev/null || exit + +top_dir=$(pwd) +starting_branch=$(git rev-parse --abbrev-ref HEAD) +dolt_dir="../../../go/cmd/dolt/" + +# setup a repository with dolt built +# from the current branch +build_dolt "$starting_branch" +setup_dir "head" + +while IFS= read -r ver +do + + build_dolt "$ver" + setup_dir "$ver" + + # run compatibility.bats to ensure dolt @ $ver can + # read a repo created with dolt @ HEAD + ver_hash=$(git rev-parse HEAD) + echo "hash for dolt @ $ver: $ver_hash" + run_bats_tests head + +done < <(grep -v '^ *#' < dolt_versions.txt) + +# now build dolt @ HEAD and make sure we can read +# all of the legacy repositories we created +build_dolt "$starting_branch" + +while IFS= read -r ver +do + head_hash=$(git rev-parse HEAD) + echo "hash for dolt @ head: $head_hash" + run_bats_tests "$ver" + +done < <(grep -v '^ *#' < dolt_versions.txt) -./compatibility.sh -cd .. -#rm -r $test_env \ No newline at end of file +popd > /dev/null || exit \ No newline at end of file diff --git a/bats/compatibility/test_files/bats/common.bash.bats b/bats/compatibility/test_files/bats/common.bash.bats deleted file mode 100644 index b3bd83f08b3..00000000000 --- a/bats/compatibility/test_files/bats/common.bash.bats +++ /dev/null @@ -1,28 +0,0 @@ -#!/usr/bin/env bats -load $BATS_TEST_DIRNAME/helper/common.bash - -setup() { - setup_common -} - -teardown() { - teardown_common -} - -@test "stashing, setting, and restoring dolt users" { - stash_current_dolt_user - [ "$STASHED_DOLT_USER_NAME" = "Bats Tests" ] - [ "$STASHED_DOLT_USER_EMAIL" = "bats@email.fake" ] - - set_dolt_user "Bats Tests 1" "bats-1@email.fake" - NAME=`current_dolt_user_name` - EMAIL=`current_dolt_user_email` - [ "$NAME" = "Bats Tests 1" ] - [ "$EMAIL" = "bats-1@email.fake" ] - - restore_stashed_dolt_user - NAME=`current_dolt_user_name` - EMAIL=`current_dolt_user_email` - [ "$NAME" = "Bats Tests" ] - [ "$EMAIL" = "bats@email.fake" ] -} diff --git a/bats/compatibility/test_files/bats/helper/common.bash b/bats/compatibility/test_files/bats/helper/common.bash index c64c14c90d7..b2130f32dcb 100644 --- a/bats/compatibility/test_files/bats/helper/common.bash +++ b/bats/compatibility/test_files/bats/helper/common.bash @@ -5,42 +5,6 @@ if [ -z "$BATS_TMPDIR" ]; then mkdir $BATS_TMPDIR fi -# nativebatsdir() { echo `nativepath $BATS_TEST_DIRNAME/$1`; } -# batshelper() { echo `nativebatsdir helper/$1`; } - -stash_current_dolt_user() { - export STASHED_DOLT_USER_NAME=`dolt config --global --get user.name` - export STASHED_DOLT_USER_EMAIL=`dolt config --global --get user.email` -} - -restore_stashed_dolt_user() { - dolt config --global --add user.name "$STASHED_DOLT_USER_NAME" - dolt config --global --add user.email "$STASHED_DOLT_USER_EMAIL" - unset STASHED_DOLT_USER_NAME STASHED_DOLT_USER_EMAIL -} - -set_dolt_user() { - dolt config --global --add user.name "$1" > /dev/null 2>&1 - dolt config --global --add user.email "$2" > /dev/null 2>&1 -} - -current_dolt_user_name() { - dolt config --global --get user.name -} - -current_dolt_user_email() { - dolt config --global --get user.email -} - -setup_no_dolt_init() { - export PATH=$PATH:~/go/bin - cd $BATS_TMPDIR - # Append the directory name with the pid of the calling process so - # multiple tests can be run in parallel on the same machine - mkdir "dolt-repo-$$" - cd "dolt-repo-$$" -} - setup_common() { echo "setup" > /dev/null } @@ -49,6 +13,4 @@ teardown_common() { echo "teardown" > /dev/null } -# nativevar DOLT_ROOT_PATH $BATS_TMPDIR/config-$$ /p dolt config --global --add metrics.disabled true > /dev/null 2>&1 -set_dolt_user "Bats Tests" "bats@email.fake" diff --git a/bats/compatibility/test_files/compatibility.sh b/bats/compatibility/test_files/compatibility.sh deleted file mode 100755 index fe3c7b25be9..00000000000 --- a/bats/compatibility/test_files/compatibility.sh +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash - - -if [[ $(git diff --stat) != '' ]]; then - echo "cannot run compatibility test with git working changes" - exit -fi - -dolt_dir="../../../go/cmd/dolt/" - -starting_branch=$(git rev-parse --abbrev-ref HEAD) -top_dir=$(pwd) - -function build_dolt() { - # go back to initial branch - pushd "$dolt_dir" > /dev/null || exit - git checkout "$1" > /dev/null - go install . - popd > /dev/null || exit -} - -function setup_dir() { - if [ -d "$1" ]; then rm -r "$1"; fi - mkdir "$1" - pushd "$1" > /dev/null || exit - "$top_dir"/setup_repo.sh > setup_repo.log - cp -r "$top_dir"/bats/* . - popd > /dev/null || exit -} - -function run_bats_tests() { - pushd "$1" > /dev/null || exit - cwd=$(pwd) - hash=$(git rev-parse HEAD) - echo "testing dolt @ $hash against repo in $cwd" - bats . - echo - popd > /dev/null || exit -} - -setup_dir "head" - -while IFS= read -r ver -do - - build_dolt "$ver" - setup_dir "$ver" - - # ensure we can read the repo - # create with dolt @ head - ver_hash=$(git rev-parse HEAD) - echo "hash for dolt @ $ver: $ver_hash" - run_bats_tests head - -done < <(grep -v '^ *#' < dolt_versions.txt) - -# now build dolt @ head and make sure we can read -# all of the legacy repositories we created -build_dolt "$starting_branch" - -while IFS= read -r ver -do - head_hash=$(git rev-parse HEAD) - echo "hash for dolt @ head: $head_hash" - run_bats_tests "$ver" - -done < <(grep -v '^ *#' < dolt_versions.txt) diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index 55d912ca636..c9ddad44b94 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -40,4 +40,21 @@ SQL dolt add . dolt commit -m "made changes to other" -dolt checkout master \ No newline at end of file +dolt checkout master + +# add info to the log +echo +echo "dolt status" +dolt status + +echo +echo "dolt branch" +dolt branch + +echo +echo "dolt schema show" +dolt schema show + +echo +echo "dolt sql -q 'select * from abc;'" +dolt sql -q 'select * from abc;' \ No newline at end of file From a1d520ea662aab6a9127b62e0c69224af4dbe45e Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Tue, 25 Feb 2020 17:35:17 -0800 Subject: [PATCH 11/19] added readme --- bats/compatibility/README.md | 23 +++++++++++++++++++++ bats/compatibility/test_files/setup_repo.sh | 2 +- 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/bats/compatibility/README.md b/bats/compatibility/README.md index e69de29bb2d..492ac7dc89c 100644 --- a/bats/compatibility/README.md +++ b/bats/compatibility/README.md @@ -0,0 +1,23 @@ +## Compatibility Tests + +These tests attempt to ensure forward and backward compatibility for Dolt versions. + +The testing script `runner.sh` checks out and builds older Dolt release versions to ensure that they can read data from +newer repositories and vice-versa. +A test directory `/env_test` is created outside of source control to preserve the environment across +`git checkout` commands. + +For each Dolt release version listed in `versions.txt`, `runner.sh` creates a legacy Dolt repository using the +`/test_files/setup_repo.sh` script in a directory named with the corresponding version. +An additional Dolt repository is created using Dolt built from the initial git branch. +BATS tests, located in `test_files/bats/`, are used to verify the forward and backward compatibility of all Dolt versions +and the repositories created with those versions. + +### Updating + +The BATS tests used to verify compatibility are inherently fragile. +Our primary integration tests in `/dolt/bats/` setup and tear down their environment for each test. +Because these the compatibility tests rely on creating a repo with one version of Dolt and running BATS tests with a +different version, we cannot isolate their environment without building twice per test. +The initial version of these tests does all data mutating in the `setup_repo.sh` script, and limits state modifications +within the BATS test to `dolt checkout` branch changes. Take care when editing the BATS tests to follow this pattern. \ No newline at end of file diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index c9ddad44b94..95d5b7ee676 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -57,4 +57,4 @@ dolt schema show echo echo "dolt sql -q 'select * from abc;'" -dolt sql -q 'select * from abc;' \ No newline at end of file +dolt sql -q 'select * from abc;' From ed6b0e898114f1228c1788cf2345ff19e959e1ff Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Tue, 25 Feb 2020 17:43:09 -0800 Subject: [PATCH 12/19] updated json schema export bats test --- bats/helper/1pk5col-ints-schema.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bats/helper/1pk5col-ints-schema.json b/bats/helper/1pk5col-ints-schema.json index c77613337b5..9fea4e10886 100644 --- a/bats/helper/1pk5col-ints-schema.json +++ b/bats/helper/1pk5col-ints-schema.json @@ -3,6 +3,7 @@ { "tag": 0, "name": "pk", + "kind": "int", "is_part_of_pk": true, "typeinfo": { "type": "int", @@ -20,6 +21,7 @@ { "tag": 1, "name": "c1", + "kind": "int", "is_part_of_pk": false, "typeinfo": { "type": "int", @@ -32,6 +34,7 @@ { "tag": 2, "name": "c2", + "kind": "int", "is_part_of_pk": false, "typeinfo": { "type": "int", @@ -44,6 +47,7 @@ { "tag": 3, "name": "c3", + "kind": "int", "is_part_of_pk": false, "typeinfo": { "type": "int", @@ -56,6 +60,7 @@ { "tag": 4, "name": "c4", + "kind": "int", "is_part_of_pk": false, "typeinfo": { "type": "int", @@ -68,6 +73,7 @@ { "tag": 5, "name": "c5", + "kind": "int", "is_part_of_pk": false, "typeinfo": { "type": "int", From fcaf9876cbecebcdb85b817112e91b4767879c85 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Tue, 25 Feb 2020 17:55:10 -0800 Subject: [PATCH 13/19] deleted incompatible testdata repos, added compatible one --- .../noms/09hv7tllti9b3hfi7u5m3e7lpbne390a | Bin 159 -> 0 bytes .../noms/0kl39j0i7gljemj93loojdhdbsj9lb36 | Bin 284 -> 0 bytes .../noms/1nrr0bod1960bccqc6c2med68hod5gc7 | Bin 330 -> 0 bytes .../noms/1rnurg4no9s6s23mdq8vvfmj0cik47db | Bin 211 -> 0 bytes .../noms/3dsltc9vis2m6o89bv0dh482pfme30ss | Bin 262 -> 0 bytes .../noms/5im08tb1mu140r7kvtrd04u8ub5qk607 | Bin 832 -> 0 bytes .../noms/6739m2utlhl1k98f4o2fqmgtm12ino4t | Bin 211 -> 0 bytes .../noms/6oc2i2n9ln25n8go78dalvo3e9er9mg3 | Bin 122 -> 0 bytes .../noms/7er6962c841ghn8j0a357ujde9daq3mu | Bin 716 -> 0 bytes .../noms/7vu480853r3b0hitt89l7gc3r854fb53 | Bin 262 -> 0 bytes .../noms/89knkh4sejb7tf05gqq01osftlbsmdq1 | Bin 1665 -> 0 bytes .../noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd | Bin 262 -> 0 bytes .../noms/9ibrf56gr6gsgr7cpnda4au9o0vd0412 | Bin 650 -> 0 bytes .../noms/a8hqijvam2c6r9qvbffsdj5r55bis0mn | Bin 668 -> 0 bytes .../noms/a9307merr53dd71vj459m7qo6rk435na | Bin 262 -> 0 bytes .../noms/ag7kv5tuc4jvovmas7r5kel32dd94g86 | Bin 262 -> 0 bytes .../noms/c8a3b64elue3121ng0rgeagcnf48fbat | Bin 229 -> 0 bytes .../noms/c8dirve58o6npl3aufbupn3c2pt55el4 | Bin 1069 -> 0 bytes .../noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j | Bin 262 -> 0 bytes .../noms/csopsqdj2urggh85gbsfth4c9lf4r8vb | Bin 262 -> 0 bytes .../noms/di7sdosugcarnn353e8ldbnlts9v42s5 | Bin 192 -> 0 bytes .../noms/eiit9a47igil0id02vhgpq4g72ga3dha | Bin 229 -> 0 bytes .../noms/es7vlqed0665gq9es3ns2uqeh75bkerc | Bin 881 -> 0 bytes .../noms/fkes7bk2bl0p9cvfgk3dd7uf6p4cqcm1 | Bin 229 -> 0 bytes .../noms/frc0ef452fhh97o534e7lol2b427lk56 | Bin 262 -> 0 bytes .../noms/g2slg3mhtfb5m2tk00t8mor5lkboqj2m | Bin 262 -> 0 bytes .../noms/glc2mu652o0pt893a79j30tc6kgvk453 | Bin 211 -> 0 bytes .../noms/hgsmoadjsib12ml6e05or4q5urv9lt7l | Bin 1081 -> 0 bytes .../noms/ie2tcnurro57vl8urvucbjdrmmf9bo0h | Bin 249 -> 0 bytes .../noms/iellg8am40vu2tf61hbe7i0anhm76gtv | Bin 279 -> 0 bytes .../noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr | Bin 262 -> 0 bytes .../noms/ju51cbttj99itbsbk2svu7sij2tu4rhl | Bin 1554 -> 0 bytes .../noms/k3ksuke2vcb2hgatpdqbhildb8raab5p | Bin 262 -> 0 bytes .../noms/kmjfnt24t2vf8e58u3r5insr7tfohm2e | Bin 211 -> 0 bytes .../noms/m297l94np7ub1bp8irhpf3eta6bpegr8 | Bin 923 -> 0 bytes .../noms/m3sn7rmfc0lbis3codosl1k46hpv0kod | Bin 457 -> 0 bytes .../testdata/20200113/.dolt/noms/manifest | 1 - .../noms/miv7sdaoglrgfs2rgafm77kr6h9cbgvn | Bin 211 -> 0 bytes .../noms/ml7hl70ar993tc32gla4ttjar0ogka86 | Bin 284 -> 0 bytes .../noms/naromh9oel8c6dmmg6lvg61ot3gvomkv | Bin 262 -> 0 bytes .../noms/oarahke38ufh3tmnfpafuvb51dfbhgmh | Bin 783 -> 0 bytes .../noms/og4gt15c913id9e4iv7bcobjkn6aqn8d | Bin 229 -> 0 bytes .../noms/ojdo9hafo3mvlko0cefqcom7os26utln | Bin 211 -> 0 bytes .../noms/os1po1dclurjkflegl02usl2r8rkg2cq | Bin 262 -> 0 bytes .../noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik | Bin 229 -> 0 bytes .../noms/qqc5268agbqc0nqdud6gn7m202teffnm | Bin 1069 -> 0 bytes .../noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 | Bin 229 -> 0 bytes .../noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 | Bin 262 -> 0 bytes .../noms/s69lvejsvg9so3l2nsquavmbai4dmu03 | Bin 934 -> 0 bytes .../noms/srlc19tj78ldn4hbb8duso90i1vugc59 | Bin 249 -> 0 bytes .../noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa | Bin 309 -> 0 bytes .../noms/u62g6ma6evirqjb11i0up0p1hppb50ou | Bin 284 -> 0 bytes .../noms/ug6l7o53ntp50f252u65cj96om411v14 | Bin 926 -> 0 bytes .../testdata/20200113/.dolt/repo_state.json | 8 -- bats/helper/testdata/20200113/README.md | 75 ------------------ .../testdata/20200218/.dolt/config.json | 1 - .../noms/0np979l706glgvkrb60qjutfsvqp2qha | Bin 211 -> 0 bytes .../noms/19358uq7gd25das63fisbhs5hgr5bjl6 | Bin 211 -> 0 bytes .../noms/1c4lr7m42hk06rmp5ud608k3u1cskdng | Bin 695 -> 0 bytes .../noms/1cnrtr8avnmntcjf7sk1ls124vd994o2 | Bin 885 -> 0 bytes .../noms/1j0kapej1j3vcjtl0v5g9aba56gnsocs | Bin 262 -> 0 bytes .../noms/29sgublh0pevbk65gg7e6ifio0r1pbg3 | Bin 229 -> 0 bytes .../noms/3qsuukgmncd33n3a3pvh3bl2uknpd1pt | Bin 262 -> 0 bytes .../noms/4bujnjuatdli0klda7ucot0tl836jujt | Bin 57 -> 0 bytes .../noms/8tk8khk3qfdloe8bbjh9avdpp1n5f10j | Bin 977 -> 0 bytes .../noms/8uve6lu1t2bbp21jh8luu27112ldee53 | Bin 746 -> 0 bytes bats/helper/testdata/20200218/.dolt/noms/LOCK | 0 .../noms/akkjp98avt302ttpsc17fbbjjj3bro6m | Bin 296 -> 0 bytes .../noms/at3q7mfua3danpflmntkbnvjhl91nr7e | Bin 249 -> 0 bytes .../noms/aua0mketcuac9gdue9fako6m10i1orkt | Bin 211 -> 0 bytes .../noms/c9i43jm5ubijsvdg3679hld9p1otrmhk | Bin 675 -> 0 bytes .../noms/cs3200s56umfm60v6bruf0rnt0adquvu | Bin 159 -> 0 bytes .../noms/e1hhji1sq277j2spo9defilqjhb31tnp | Bin 211 -> 0 bytes .../noms/es163dd2tfgc03k6g0eikn5obr9p52o5 | Bin 1233 -> 0 bytes .../noms/fe1m0kokam20d7jr8t6acg95s9iauabm | Bin 330 -> 0 bytes .../noms/g06fe93ki9g8pnfnng655vbqgsqrgm6e | Bin 1478 -> 0 bytes .../noms/h37m8tmlu1pco0de4fskh4bhjng0iiqj | Bin 262 -> 0 bytes .../noms/j3qdmkh5kies7u6u0p5q35qqvsdrnqmh | Bin 284 -> 0 bytes .../noms/jaa1npmvf5mvmjfa5g05k97csb6lmetj | Bin 809 -> 0 bytes .../noms/joa80roic1tnji5co508amahn0s3buc4 | Bin 249 -> 0 bytes .../noms/kef5fdf6ipmeoaqjvaucfeutvigp1k5t | Bin 284 -> 0 bytes .../noms/m06v03lupqbb7mjj3b1v0n750n28iusl | Bin 229 -> 0 bytes .../noms/m1plgie64ceiqsiodf91v49g5s0v47aq | Bin 211 -> 0 bytes .../testdata/20200218/.dolt/noms/manifest | 1 - .../noms/ng1ns2c6or846i2g0pgg4ngjhonbml77 | Bin 942 -> 0 bytes .../noms/nl77suguv7ont1cmeccqdh2u9vc1vpis | Bin 1112 -> 0 bytes .../noms/p59hn64bs3917m88ojtodm16n7c945v5 | Bin 1992 -> 0 bytes .../noms/pkn7rl4ptpcnaj84ndqovf70m25k4m15 | Bin 309 -> 0 bytes .../noms/psvnhn9ct110ood7vckomvoeqjdfurga | Bin 211 -> 0 bytes .../noms/pukvcg65bke2gfjsaa0vkmb6iqufc2pr | Bin 229 -> 0 bytes .../noms/q46sgrpbkut499mcat8jqck1vd7dga8j | Bin 262 -> 0 bytes .../noms/r02nsa1aso14cum0ucu68hpbv5e26sub | Bin 192 -> 0 bytes .../noms/ss6lrhevqfh9ekcn0kncn7basasco8ae | Bin 229 -> 0 bytes .../noms/u3v99av1pn9csrj1c2279d55cgbs9nmf | Bin 229 -> 0 bytes .../noms/ua5da1eb1h4851k05dhn8bb9nl90s7ve | Bin 262 -> 0 bytes .../noms/uieip5gmq2l1crulfhaaeetjnp7qrss3 | Bin 262 -> 0 bytes .../noms/vf9go77binpab3ueh4qjc7e17ms5mulj | Bin 229 -> 0 bytes .../noms/vluaml01uh03jq2qmlvnq6lmm76k2gnb | Bin 122 -> 0 bytes .../testdata/20200218/.dolt/repo_state.json | 8 -- bats/helper/testdata/20200218/README.md | 75 ------------------ .../{20200113 => 20200225}/.dolt/config.json | 0 .../noms/01mcg27ngkhkrthdo0p1ogdti510ui2d | Bin 0 -> 211 bytes .../noms/0t63hbmjg0o2e0l2muvmpdt7clu931h9 | Bin 0 -> 192 bytes .../noms/0t9600cdhn6hoshofgps1e1qeipsj8dt | Bin 0 -> 262 bytes .../noms/3f7h9ho7l4ltmil4ip6iv5csfjeqa8pe | Bin 0 -> 211 bytes .../noms/3oobbccq8prr93u72rui774p5bddobss | Bin 0 -> 262 bytes .../noms/3skhauhatndqile2e7mqs6q25eoh4988 | Bin 0 -> 680 bytes .../noms/4ae47cm21t7cuq7vluh2ugosmv3djfii | Bin 0 -> 211 bytes .../noms/4bujnjuatdli0klda7ucot0tl836jujt | Bin .../noms/6bc0ms2gnjcepoup7ni9110khaljmu47 | Bin 0 -> 262 bytes .../noms/77goep5rp0nmldp0pn8j66ria281d7tv | Bin 0 -> 262 bytes .../noms/7a407hfrv6mucer355itqg34lsui05ln | Bin 0 -> 323 bytes .../noms/8gnmhsv44p0qfgi21hvq6ql0hvv4r7tr | Bin 0 -> 211 bytes .../noms/8q7v5097qicfnloaqc6roe05ef75428s | Bin 0 -> 1001 bytes .../noms/94tvddc0h23hi71m0ovp3emkdv8ko6uq | Bin 0 -> 229 bytes .../noms/9657m1fpeclidkpn8g2h38594pht9jsq | Bin 0 -> 284 bytes .../noms/9hrkb1viqhe9iplh2b623i4g358tcn16 | Bin 0 -> 909 bytes .../{20200113 => 20200225}/.dolt/noms/LOCK | 0 .../noms/a4ofkmekn2f0ih23dmqg9klvhr7caje8 | Bin 0 -> 249 bytes .../noms/cae69p9bv9qgk8gnmcetcrq6pb337bur | Bin 0 -> 229 bytes .../noms/cvk1s81mdeof0rnedr8vmk4f3qh91r2a | Bin 0 -> 1287 bytes .../noms/fi3vd71upeqgs7ffmc198536l2ah2nem | Bin 0 -> 284 bytes .../noms/fjfk34olm8dg9f3l7u7sqk259allkpbq | Bin 0 -> 249 bytes .../noms/fvv6ab1mar3engqa8aunlous38m1pbtd | Bin 0 -> 229 bytes .../noms/g1k00sceog5vkmf454dpcf5prg458vrh | Bin 0 -> 159 bytes .../noms/g3n9nvmfponntake5r368lnlljmbidke | Bin 0 -> 229 bytes .../noms/gi9e8nmhav58f4vukca2vc2cd87u09af | Bin 0 -> 262 bytes .../noms/h16g5dvp5vkq837snpa8760ac8lhl4ad | Bin 0 -> 229 bytes .../noms/h463bia4dpvciqkm76vfj5qr4ed0l6k1 | Bin 0 -> 211 bytes .../noms/jff26llmtmj7ap2rtlc4g7v42bfmg8a7 | Bin 0 -> 967 bytes .../noms/jqt5s1qs2g998ugg538u8l7c706it2cb | Bin 0 -> 1153 bytes .../noms/lci84t6s7j5r171qn02dlr7aqns6549e | Bin 0 -> 229 bytes .../testdata/20200225/.dolt/noms/manifest | 1 + .../noms/n49314e2mcvrf6fi2g6s1s3dkv87e4i0 | Bin 0 -> 956 bytes .../noms/p3u6rb5hpkc8dcqfvlq3ptr2a0rsodu2 | Bin 0 -> 309 bytes .../noms/psdvh71n9e069pl01nkcg5aijos7k891 | Bin 0 -> 700 bytes .../noms/rd6kqkaclph8l93js1f2h00pna5uuqif | Bin 0 -> 126 bytes .../noms/refbbl8digdrdb0mhrfk6a0mkuhb0ran | Bin 0 -> 747 bytes .../noms/sfa54kk9itpahbnapbf56d6vue2b6iko | Bin 0 -> 262 bytes .../noms/t9virrnc5olckgn23ok6cnak68ld8a29 | Bin 0 -> 1304 bytes .../noms/u025c384nohd013tjaeq6c1vn6cj1v9r | Bin 0 -> 794 bytes .../noms/vcgoj8o1malsol4avn930tpngsd4094u | Bin 0 -> 211 bytes .../noms/vfm8fpknt3arl9rn73mh1nn0sk46olmo | Bin 0 -> 279 bytes .../testdata/20200225/.dolt/repo_state.json | 8 ++ bats/helper/testdata/20200225/LICENSE.md | 1 + bats/helper/testdata/20200225/README.md | 1 + bats/helper/testdata/new_repo.sh | 21 +++++ 147 files changed, 32 insertions(+), 169 deletions(-) delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/09hv7tllti9b3hfi7u5m3e7lpbne390a delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/0kl39j0i7gljemj93loojdhdbsj9lb36 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/1nrr0bod1960bccqc6c2med68hod5gc7 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/1rnurg4no9s6s23mdq8vvfmj0cik47db delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/3dsltc9vis2m6o89bv0dh482pfme30ss delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/5im08tb1mu140r7kvtrd04u8ub5qk607 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/6739m2utlhl1k98f4o2fqmgtm12ino4t delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/6oc2i2n9ln25n8go78dalvo3e9er9mg3 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/7er6962c841ghn8j0a357ujde9daq3mu delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/7vu480853r3b0hitt89l7gc3r854fb53 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/89knkh4sejb7tf05gqq01osftlbsmdq1 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/9ibrf56gr6gsgr7cpnda4au9o0vd0412 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/a8hqijvam2c6r9qvbffsdj5r55bis0mn delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/a9307merr53dd71vj459m7qo6rk435na delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ag7kv5tuc4jvovmas7r5kel32dd94g86 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/c8a3b64elue3121ng0rgeagcnf48fbat delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/c8dirve58o6npl3aufbupn3c2pt55el4 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/csopsqdj2urggh85gbsfth4c9lf4r8vb delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/di7sdosugcarnn353e8ldbnlts9v42s5 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/eiit9a47igil0id02vhgpq4g72ga3dha delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/es7vlqed0665gq9es3ns2uqeh75bkerc delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/fkes7bk2bl0p9cvfgk3dd7uf6p4cqcm1 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/frc0ef452fhh97o534e7lol2b427lk56 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/g2slg3mhtfb5m2tk00t8mor5lkboqj2m delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/glc2mu652o0pt893a79j30tc6kgvk453 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/hgsmoadjsib12ml6e05or4q5urv9lt7l delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ie2tcnurro57vl8urvucbjdrmmf9bo0h delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/iellg8am40vu2tf61hbe7i0anhm76gtv delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ju51cbttj99itbsbk2svu7sij2tu4rhl delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/k3ksuke2vcb2hgatpdqbhildb8raab5p delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/kmjfnt24t2vf8e58u3r5insr7tfohm2e delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/m297l94np7ub1bp8irhpf3eta6bpegr8 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/m3sn7rmfc0lbis3codosl1k46hpv0kod delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/manifest delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/miv7sdaoglrgfs2rgafm77kr6h9cbgvn delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ml7hl70ar993tc32gla4ttjar0ogka86 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/naromh9oel8c6dmmg6lvg61ot3gvomkv delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/oarahke38ufh3tmnfpafuvb51dfbhgmh delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/og4gt15c913id9e4iv7bcobjkn6aqn8d delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ojdo9hafo3mvlko0cefqcom7os26utln delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/os1po1dclurjkflegl02usl2r8rkg2cq delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/qqc5268agbqc0nqdud6gn7m202teffnm delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/s69lvejsvg9so3l2nsquavmbai4dmu03 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/srlc19tj78ldn4hbb8duso90i1vugc59 delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/u62g6ma6evirqjb11i0up0p1hppb50ou delete mode 100644 bats/helper/testdata/20200113/.dolt/noms/ug6l7o53ntp50f252u65cj96om411v14 delete mode 100644 bats/helper/testdata/20200113/.dolt/repo_state.json delete mode 100644 bats/helper/testdata/20200113/README.md delete mode 100644 bats/helper/testdata/20200218/.dolt/config.json delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/0np979l706glgvkrb60qjutfsvqp2qha delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/19358uq7gd25das63fisbhs5hgr5bjl6 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/1c4lr7m42hk06rmp5ud608k3u1cskdng delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/1cnrtr8avnmntcjf7sk1ls124vd994o2 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/1j0kapej1j3vcjtl0v5g9aba56gnsocs delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/29sgublh0pevbk65gg7e6ifio0r1pbg3 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/3qsuukgmncd33n3a3pvh3bl2uknpd1pt delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/8tk8khk3qfdloe8bbjh9avdpp1n5f10j delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/8uve6lu1t2bbp21jh8luu27112ldee53 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/LOCK delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/akkjp98avt302ttpsc17fbbjjj3bro6m delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/at3q7mfua3danpflmntkbnvjhl91nr7e delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/aua0mketcuac9gdue9fako6m10i1orkt delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/c9i43jm5ubijsvdg3679hld9p1otrmhk delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/cs3200s56umfm60v6bruf0rnt0adquvu delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/e1hhji1sq277j2spo9defilqjhb31tnp delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/es163dd2tfgc03k6g0eikn5obr9p52o5 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/fe1m0kokam20d7jr8t6acg95s9iauabm delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/g06fe93ki9g8pnfnng655vbqgsqrgm6e delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/h37m8tmlu1pco0de4fskh4bhjng0iiqj delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/j3qdmkh5kies7u6u0p5q35qqvsdrnqmh delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/jaa1npmvf5mvmjfa5g05k97csb6lmetj delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/joa80roic1tnji5co508amahn0s3buc4 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/kef5fdf6ipmeoaqjvaucfeutvigp1k5t delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/m06v03lupqbb7mjj3b1v0n750n28iusl delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/m1plgie64ceiqsiodf91v49g5s0v47aq delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/manifest delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/ng1ns2c6or846i2g0pgg4ngjhonbml77 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/nl77suguv7ont1cmeccqdh2u9vc1vpis delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/p59hn64bs3917m88ojtodm16n7c945v5 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/pkn7rl4ptpcnaj84ndqovf70m25k4m15 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/psvnhn9ct110ood7vckomvoeqjdfurga delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/pukvcg65bke2gfjsaa0vkmb6iqufc2pr delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/q46sgrpbkut499mcat8jqck1vd7dga8j delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/r02nsa1aso14cum0ucu68hpbv5e26sub delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/ss6lrhevqfh9ekcn0kncn7basasco8ae delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/u3v99av1pn9csrj1c2279d55cgbs9nmf delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/ua5da1eb1h4851k05dhn8bb9nl90s7ve delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/uieip5gmq2l1crulfhaaeetjnp7qrss3 delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/vf9go77binpab3ueh4qjc7e17ms5mulj delete mode 100644 bats/helper/testdata/20200218/.dolt/noms/vluaml01uh03jq2qmlvnq6lmm76k2gnb delete mode 100644 bats/helper/testdata/20200218/.dolt/repo_state.json delete mode 100644 bats/helper/testdata/20200218/README.md rename bats/helper/testdata/{20200113 => 20200225}/.dolt/config.json (100%) mode change 100644 => 100755 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/01mcg27ngkhkrthdo0p1ogdti510ui2d create mode 100644 bats/helper/testdata/20200225/.dolt/noms/0t63hbmjg0o2e0l2muvmpdt7clu931h9 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/0t9600cdhn6hoshofgps1e1qeipsj8dt create mode 100644 bats/helper/testdata/20200225/.dolt/noms/3f7h9ho7l4ltmil4ip6iv5csfjeqa8pe create mode 100644 bats/helper/testdata/20200225/.dolt/noms/3oobbccq8prr93u72rui774p5bddobss create mode 100644 bats/helper/testdata/20200225/.dolt/noms/3skhauhatndqile2e7mqs6q25eoh4988 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/4ae47cm21t7cuq7vluh2ugosmv3djfii rename bats/helper/testdata/{20200113 => 20200225}/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt (100%) create mode 100644 bats/helper/testdata/20200225/.dolt/noms/6bc0ms2gnjcepoup7ni9110khaljmu47 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/77goep5rp0nmldp0pn8j66ria281d7tv create mode 100644 bats/helper/testdata/20200225/.dolt/noms/7a407hfrv6mucer355itqg34lsui05ln create mode 100644 bats/helper/testdata/20200225/.dolt/noms/8gnmhsv44p0qfgi21hvq6ql0hvv4r7tr create mode 100644 bats/helper/testdata/20200225/.dolt/noms/8q7v5097qicfnloaqc6roe05ef75428s create mode 100644 bats/helper/testdata/20200225/.dolt/noms/94tvddc0h23hi71m0ovp3emkdv8ko6uq create mode 100644 bats/helper/testdata/20200225/.dolt/noms/9657m1fpeclidkpn8g2h38594pht9jsq create mode 100644 bats/helper/testdata/20200225/.dolt/noms/9hrkb1viqhe9iplh2b623i4g358tcn16 rename bats/helper/testdata/{20200113 => 20200225}/.dolt/noms/LOCK (100%) create mode 100644 bats/helper/testdata/20200225/.dolt/noms/a4ofkmekn2f0ih23dmqg9klvhr7caje8 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/cae69p9bv9qgk8gnmcetcrq6pb337bur create mode 100644 bats/helper/testdata/20200225/.dolt/noms/cvk1s81mdeof0rnedr8vmk4f3qh91r2a create mode 100644 bats/helper/testdata/20200225/.dolt/noms/fi3vd71upeqgs7ffmc198536l2ah2nem create mode 100644 bats/helper/testdata/20200225/.dolt/noms/fjfk34olm8dg9f3l7u7sqk259allkpbq create mode 100644 bats/helper/testdata/20200225/.dolt/noms/fvv6ab1mar3engqa8aunlous38m1pbtd create mode 100644 bats/helper/testdata/20200225/.dolt/noms/g1k00sceog5vkmf454dpcf5prg458vrh create mode 100644 bats/helper/testdata/20200225/.dolt/noms/g3n9nvmfponntake5r368lnlljmbidke create mode 100644 bats/helper/testdata/20200225/.dolt/noms/gi9e8nmhav58f4vukca2vc2cd87u09af create mode 100644 bats/helper/testdata/20200225/.dolt/noms/h16g5dvp5vkq837snpa8760ac8lhl4ad create mode 100644 bats/helper/testdata/20200225/.dolt/noms/h463bia4dpvciqkm76vfj5qr4ed0l6k1 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/jff26llmtmj7ap2rtlc4g7v42bfmg8a7 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/jqt5s1qs2g998ugg538u8l7c706it2cb create mode 100644 bats/helper/testdata/20200225/.dolt/noms/lci84t6s7j5r171qn02dlr7aqns6549e create mode 100644 bats/helper/testdata/20200225/.dolt/noms/manifest create mode 100644 bats/helper/testdata/20200225/.dolt/noms/n49314e2mcvrf6fi2g6s1s3dkv87e4i0 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/p3u6rb5hpkc8dcqfvlq3ptr2a0rsodu2 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/psdvh71n9e069pl01nkcg5aijos7k891 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/rd6kqkaclph8l93js1f2h00pna5uuqif create mode 100644 bats/helper/testdata/20200225/.dolt/noms/refbbl8digdrdb0mhrfk6a0mkuhb0ran create mode 100644 bats/helper/testdata/20200225/.dolt/noms/sfa54kk9itpahbnapbf56d6vue2b6iko create mode 100644 bats/helper/testdata/20200225/.dolt/noms/t9virrnc5olckgn23ok6cnak68ld8a29 create mode 100644 bats/helper/testdata/20200225/.dolt/noms/u025c384nohd013tjaeq6c1vn6cj1v9r create mode 100644 bats/helper/testdata/20200225/.dolt/noms/vcgoj8o1malsol4avn930tpngsd4094u create mode 100644 bats/helper/testdata/20200225/.dolt/noms/vfm8fpknt3arl9rn73mh1nn0sk46olmo create mode 100755 bats/helper/testdata/20200225/.dolt/repo_state.json create mode 100755 bats/helper/testdata/20200225/LICENSE.md create mode 100755 bats/helper/testdata/20200225/README.md create mode 100644 bats/helper/testdata/new_repo.sh diff --git a/bats/helper/testdata/20200113/.dolt/noms/09hv7tllti9b3hfi7u5m3e7lpbne390a b/bats/helper/testdata/20200113/.dolt/noms/09hv7tllti9b3hfi7u5m3e7lpbne390a deleted file mode 100644 index f8cb6d366e7dbc29458f3d13dcfcf52d8447c84e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 159 zcmZo;Jix}l%p_ctnpUizk(!uNte>2pmzI;6T*7|3&3+lzWYd**8W?jn1>U>bG4HQC z3k#E=td2--VsS}oQJfY7g9xkEl*~LJCoeHaKe;G1u_Tqf`*G^6DVeU0CHBYj|D8?C zFAd9>$ig@w@5R?&$wpNSi!9R_ARvGF#+NHv*7SESp63+-6k>#mxBcIG$jrnz$;{Buz%b2{ zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#EotX554YI$;gPHAo)yPSQH<=l@q|Fir#ytvrEY=-yzy`OyH{;_ Zr0c#zPyPdi7@^`{{%^f;NG17Q004a`YghmP diff --git a/bats/helper/testdata/20200113/.dolt/noms/1nrr0bod1960bccqc6c2med68hod5gc7 b/bats/helper/testdata/20200113/.dolt/noms/1nrr0bod1960bccqc6c2med68hod5gc7 deleted file mode 100644 index dfb3629497b1f2fe483a0fb647fd7a15b9341a15..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 330 zcmX@ZXv4|ooS&PUS;EYcn_7~{$-&4Lk&;-F$i|YATAa)z<(ZdRl9`y3S(U25C|;pZ zlvo?Wu~A}Dnvs#YsZp|_nMIPRv2m)oMOvywl7XdBYFcs{ zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2S{Kvvk zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+Z}_lzgc;ai$M%1#0VAt@_*}%Ln_Jd0sw_# BU8Vp4 diff --git a/bats/helper/testdata/20200113/.dolt/noms/5im08tb1mu140r7kvtrd04u8ub5qk607 b/bats/helper/testdata/20200113/.dolt/noms/5im08tb1mu140r7kvtrd04u8ub5qk607 deleted file mode 100644 index 5dd0d916923eeb0cdd884d3c2a23be14d91e99a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 832 zcmY$N!N$NS#3aDL&m_bmu#J_8B_**WQQ(@G2qOan1K-tkXYa|s@lE*upWoin^8w?B zZJewniAg!BOe{tD<;CpFUIwQ51{NHB|4unSp5vg~o!iVV6XxgpskGT$@w{@xp~E`oV>1i z$@wX%Db8R4R(_yFd~$wXaY<2PW?o4#Z)S0PL1Ix!e12MdK{iWvW?l+QUSe)4b4g-4 zE2kh_GfV>$zoczNd`V?NDjQH+Vs0@L8xI2y(1Q$2Odx*(0i%F!anljz3!FSD`8g%= zDM|4~`S~S`Y+&COvjG({CnhDcU-7^9?#;6TULl{_922G;;o_wxYdKk2RXZR7g6v)7 za9{`dlTj)Lmp54j50LChL0dsX7Ld`8OosJh2 zGl+ieno`~VkGI^t=q7^%6EL=zm<0aaU;rY&8w~B&RtC*x{4k4+ftg7|S3fPMv^YcG zFwNL3HObV{(%3L1Ejh_3G1VZ=(!|U%H8I)HEXgdDU6X%8k)5I3^mW$PEOz}*aM#<_ z-pRtmBnXW9V*QNN#FS$F+{EIN)FSr7g0DAe-|Eu+sqx3$Ag?Upaja4(3p0}lSS2ui zQ;YHvbM%voQWHy3*}EU7-kOr>>R4ibJpbR>wEWVrjEO9aa^FN-!%xoM;a0N61{izH zu!IPT$_u~44X%r41p}E(u=oP9K@qJB#1DZ?ZXmrFIng4=r>>{?``wfMJ#M-k$^NVF6+wU{3qL^~NEUo>rTB4zmg+ZdJSz?NjS&B(&im92QnVE^HaiW<;N@_|X zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2Ebw`q0K{JZIKDc+Q#a%&h5C zk+6jc6=_J3QV)`^(G4;%DM~_%pexl&4?P4@5ZgnzHa-MBG<drq{TFeS;eSmrYyIw%A+S_;$X{0B_KEGoWfvJL9-a)(YEQg9=Mp<;Vp&B+9x$UB*3Z ziIod2ri<;lPLq1NUlO>cw5g}U$8n#mMatrl1_^~K$(L!o@-sR`W|x#J(j6(5~^0)-0S;fDe@ja287u zY_gbON!pgd)!1xq^oK8S^=0{s-~RZ~d`o|ALXuHrL*1Z*87JO;a%!zvL3;8f+wYTu5r!>Eqq?zv2MG3U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+qXA(iBJ0RU2S BUAk14uD!S3 zd&(G2W5QqYPsGfSXv7%BC@S$qBB&^sNPLhW8nR#vD&Uity%?Vue!X*Xi~8WnIp==o zeBb@f`Tc(1`Pnmb(~0m>p$-Y|Ey+Y*Dj6tgu*AYw9>1Rq?_%bz0vne+k|&)nSOhv} z7AG3zl<+*|M5Se3F_}duF%oq zWs|kD-35ym^quxa18{wOQRy|QuI5RJTAZ0xM1HbW&9f54-kA|aQ6$espdg(j=|t~f zk|;E*Dx^j75TcaF6w*7;KQNRgL&Gpe1_#N;;Z!OK8_k^V><%@z*@09cgTq7p>EuJ{ zYCz*kZ>+1M+3j!1Dx?o`rw3BWSRe9+yFy|2s?g>w1F6K8?PODOJ88jB)VE5W*0qxR zIR0o!ALWgw>ejSF6U7FXiBaDg$umjHV`LJzhBisExVrC{l&<6ul5r;4erVF>x;-Sf z%MmcUJEGlkJP?gUqw!D|SrdYGHHTK8K~m38L}%lwQLL2omD95~F!byV>`>H^tt&=` zwhr_UCHrEvg0~|U?VPO@M4Va_ieuydYhEJ54utYa_Mz0i$&N4M=$#Nnj6|4*_c*e+O%3}yS#tOP7I3W+* z+M&}D{G}Oc27BsjKyr*Ed|(P8)IAE*j#0FMv)$bGte=4$Xy@KO+y4rldD)3-gqHST zu2`}1!8nVDqp@6&ty3(m}gY8f^#M8dgeO2I#oy}`1%XR?AJM?vMqnafrWZI60kEIWf=@+Uh!t-0j(YDSS~v~0#S433>PPS9HrYT$vp zPCa(;KINKRx?Vh{t9x6ge*9ocbc^EZ{2Ubvk=jSN0GqgMba4^>jZE}?{=aegdVF%V zID0~i5Q+Qi0S4f~E{uVDw#KUNXxIWU*7!WbhTz3^Etq-nO6{Od@;MeDYEN_Kfo5CzXRXXFy4Ui zJ-G40idd-l?R}5LH!trw5KcwETzIcrPaPX}Izo3296f&ya)>aXxnIBY;q>`c>TjF> E1mng1y#N3J diff --git a/bats/helper/testdata/20200113/.dolt/noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd b/bats/helper/testdata/20200113/.dolt/noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd deleted file mode 100644 index 40bcbfc33ba5f0bef4d41e26ac1e3cc958162bce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQ*)lcF*uu!%*f815AUP@3EYTv-IK|Z1BF)k$$u!N3 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+{oso|7zE-=l5a)z5D`JFU4o#84(D(V=Nvx1@0=NJkD>Ll zAn=5u22>EE25Qe;B8aBClsm}kjVKY+Z4qS5r!8d6!89PAj~ZMu<+E_V?@h)Y%$ga8 z)xn;@B8|AmLZoCf-D*ezit76a>^R$U!t*D*kQ>4aC>JCsr0y<$ytUq0A9EVn>5X&A zdvot9)suRGL^Kq<20;DF8eJ)S{RhOp1y+5NXYug(^&J&pWg2mj_%YqP0F1|(I{@Eo zp4~kSnvk?q5@2|w#sr4xGGEy4m>n@Dpw?!lxMl(qw*r`mhqnR&5K^Qd{psY)q0#r* zV9mcBI@8!x`vaoZ96RFA|jsDlJK}KWeJ<*?ZSjA@8GJNFE=TIoWX{b?y<5eN;da&+hVFf zHMvOwj_}1s03<~SbqGy_47aT=#~iNTSnA*O;NU`mgY@^=^0}F6qI5X_7Nj=Fr4+{1 zWgz|7GT7C=cxmLBCLt_Iop+5>;_|M5a6u#erS<7i$I5Ky&uzbUc8A5$wNtG_s)8DE zds#B3QAqqQ=g;f^`vn!2e!Tkp7ew*|AC~4v?tf#kETQyOnNR-bPDz^~V zwOK%PF+*w)$Y~2PB#RcNCe+S*HnWja3!-TWyU2FnP7C!r#5?WSHw!k1X-Sh*faB>R z_Nh%g7-&e=iym?@+|eq<`)a#wr`PtV%4`=?hTMFl{Bd@CJF%lcv2RrGdK6wMeV;2| zQS!*g9-~14D6jPO>G;ZU;@6?y$LhV}^|h;YokwQ`JsFjX$SL4c^MX2)oDihPHNz+F z3NgqL2@4Vk29;1^Z%)-L;xNPNF?>Q8kQwT6FqNUAN>W7ziaxnTL)6UiK!%UAid>~} z0ZGynHFQa;$+Yqh0E$VRg6mO9t!(p5VqvRA(jQ1+er=eR7V${4Iak7fQ6xfIHppa~oh0-)$X2qYT1-U|*t2T+fx zyt%l#@#Ry#vMN2`G{V{L-G#>I{!d{~I8vnrU?f`J6gV$z3f#789bCu|lPZ%#>tn@O zrf#aEsc$j+`P^1bn`bD{{N(&14a6Z;-=Ql^g)!^-_NyfSLHong%jq`a6Vg|6I)2=rh@ zG(7?U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?DImBM!8ghiY5`%8VD3=pu@Lp|^xW7)nNQV+AA T0fiW$;>Z7Qy>Un-`CR}2fvHko diff --git a/bats/helper/testdata/20200113/.dolt/noms/c8dirve58o6npl3aufbupn3c2pt55el4 b/bats/helper/testdata/20200113/.dolt/noms/c8dirve58o6npl3aufbupn3c2pt55el4 deleted file mode 100644 index d2c48a305f5d308e2106d5c722a0139e759f2d0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1069 zcmb7@Ye*DP6vywqGqbZJyRMt|Ft8+z>|yI8)0FL95)`ymUK@lZbQ4~ZJQL;w#Kq8_j4U-_!?yOlG)rT(k%)P^$Id}fQ^PjU+ z8ZJ%?i!BUUL04lD&13-0xz}leE=uAW9j0$#Jmd*4=$dI6SkWw!0Xgr~9Pe}* zc`|c`*6`M@sDzxFZt+@7RUJ`m;E3q}z^#}(xv_X%=A#V&(hZ6xB8t?YH5`!;iZ)Od zu7dyohH5=XmhvFEaKRZ4a+adian(+UDY(_Sa$nErR*=hCN<=a(9ErMXK$xqcJI;;P zfHXQrO1gtfghaKKz1v9<03K)0R$juP%N%3juqq+i(3?!Q<846R6o}sb_#sEzW)@4S}VxH`zy9O%kw?`;1&v?OFU#Xp$+ zjv@gf!NC4vhV%a9JqekR^*1NL{=kVGF5t3dA!PF+1AaP@y5Sb}kaLN;YVl&2H+0>C zj)Yo*A0Y~d1r|8>iOhJG&Oh;$2~ zG?p8S12Wgg!Nq}=kr6l)a{vbA<@;ncX4dp}mX;L=MdC84u(Uvw z!=hNk&i5QPmKV-y@2==CyE?w3a`Dyu2WW)SN%Ku#y@W;6M~pA4ieRz6-qAzDRLZG` z(;j?v`fJBlH7pF#4D#B!?nTWJY+91R-fLaak#el0>)BqYUJN{c(sue=B~7D@tOePc z)HLyrHRglk#Icg0Vbv!X61F7v;Gp#MxUz1Qwc?IGc3;+G)%8bc_~N{AWU_&F%L~r* zlAV3S*-|84lXyka-DK@gHgB>C7JFiSE%TPw-W93&)mP%R c!$-%JjhStG$U8I%GMI|-OYxhz!iUY@0U+p8J^%m! diff --git a/bats/helper/testdata/20200113/.dolt/noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j b/bats/helper/testdata/20200113/.dolt/noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j deleted file mode 100644 index 68b8f7b692c5d475b29f3793d090dadefee95a37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQ*&^A*!qmtp*~HK!(b&M)*x1m(FeS~%GSx6CEzvxU zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+}tD007oA BU6ud< diff --git a/bats/helper/testdata/20200113/.dolt/noms/csopsqdj2urggh85gbsfth4c9lf4r8vb b/bats/helper/testdata/20200113/.dolt/noms/csopsqdj2urggh85gbsfth4c9lf4r8vb deleted file mode 100644 index 995b973c3de14c4210ad927be0677d853af208ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGG%+>RJlQxk&BQp(FwHR8JT1xGG%>}(G&MQZA}P&` zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+f-(xca1YEm!bj}nZr_HH8QLM{=LX1%HFaNjRIHZ#NE&u?` C3u1c! diff --git a/bats/helper/testdata/20200113/.dolt/noms/di7sdosugcarnn353e8ldbnlts9v42s5 b/bats/helper/testdata/20200113/.dolt/noms/di7sdosugcarnn353e8ldbnlts9v42s5 deleted file mode 100644 index 5cd10ff7dbedaca00bfd7ea640b28257b53d7d3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 192 zcmdnYcz}(8g-N(5HLX}bBQ-IlSU)*GFD)lCxrAMR&$phB%v`fCh@JnFy?Fuymz%@-d}eX7A6r{Erq<)^5p!S(%if< zU4|){c|g^9i8=boMX8A;sqEd4Q*TYlbagDTKc4^ZY+8P4SjI#a#(8avc$?1~f3DK0 k)MS8w34umw@hasTCVg6}yBsLQ2o>M_f9s7yD#`Bx09u7eDgXcg diff --git a/bats/helper/testdata/20200113/.dolt/noms/eiit9a47igil0id02vhgpq4g72ga3dha b/bats/helper/testdata/20200113/.dolt/noms/eiit9a47igil0id02vhgpq4g72ga3dha deleted file mode 100644 index d4c2af4cfb9069e0058c8099377b0b0add76af23..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YcG%sAB`%_2E9)yyc>C^^l@%+%P}$RH)n*w7TnPf29g z(#)vM@0T7p0~Z>u01UrWETZ=jWy6WG0uepKh~X#x>b= z<(&q`oK1oEu6E4(>(0W$BnVQ=t0R(|SX`1?6sN_&Ai}COB{L7m$xF=9PcBMLEJ}tD004PJQTzY^ diff --git a/bats/helper/testdata/20200113/.dolt/noms/es7vlqed0665gq9es3ns2uqeh75bkerc b/bats/helper/testdata/20200113/.dolt/noms/es7vlqed0665gq9es3ns2uqeh75bkerc deleted file mode 100644 index 0e8915b9ff59df3e22c7723cb533e88241cb5c0f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 881 zcmb7?T}TvB6vt=o&g?X@+kUu3W~s?4Y1;a^W}*^iLZqz((ZkYscRt+B*%_I+Tly9e znBi1r{AxDOg)5n6=OLz+dIkrC)3LJ?HxcGocW#fJ{}z~SEWhx^W;i|r4jVWBA_(&oX%W*(wT!6D*{`lEaTaIgQ=cV{m5uH0gKgcG61WC zOwxJ37=)ZAN(`~^(0#DRn^iQjXp!@if2G$gh1sMN>kWtTmq>0 z91p*!=hDU+wCwLcdRdyz>i9d5MBKzVFmXq-zCW*-S6UyO3I`%0ham-py2iux!th1q*y2r#d2R^xm3pFSh}>T!nB)%6*C8h zV@-AYhc8{G07%B>>n^_t1>J>Bl;i-9n3v(|zNG7=1Mkn1@}tJN>5kj0brc0`@m_PD zBM5aQYNvAv!a?WuV9!NOfwGI&M2JMD^RxJ_Cs2C`RZpmElad-b>F=heH0gPX~20D=O^4^jz1+Xa-zo#U2x4Y8r^-S`~0$->Ce(!{_lEhX6$$TUkfF}GmX z(#)vM@0T7p0~Z>u01UrWETZ=jWy6WG0uepKh~X#x>b= z<(&q`oK1oEu6E4(>(0W$BnVQ=t0R(|SX`1?6sN_&Ai}COB{L7m$xF=9PcBMLEJ=H%D{RC2-y0ip>Ff?%EU$U!w)0? Sg&3jY$Nz7=aY!ZkT>t>S@lqH7 diff --git a/bats/helper/testdata/20200113/.dolt/noms/frc0ef452fhh97o534e7lol2b427lk56 b/bats/helper/testdata/20200113/.dolt/noms/frc0ef452fhh97o534e7lol2b427lk56 deleted file mode 100644 index 2f1f2ad24e2a703dd0bdb792d43f2e43fd12574f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQCE3h8(IDB}#LOZs#n8k!%`C+z#V{?=!oU>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+o?WMM{#1nX#prL7JsevSC`9rLmEjxmk)ys#&UWiiLq0 zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2$im1Z0#=!s2UL=mn4_Oul$uzQibL^s$u9yoBFf)AeT?967KeRlu9|1*PJ zo0Jh!>PQSP!4yMLG4({uumvDU-bzC;RiajyaO5f>lkLcgY1q`lQG>D!DEUU^`Nr@l zGdC|;A=6E9g4~8lWh0^Mt~j=E%yt3bjoLDMpt7mS@p=IH`lz8Ij@94|93u$D>p6-y zLI8lkweDh5S%}@F&{!AyR@B%i)wm(%;A(gI_S1u_!4!!`W5lL77WdYIh*ZmWoE)qL zS$u+(^oD>Uh4}6@Lm`kGnyaQNmzTG&f&e^S()sBzOm;~E#Sxt#-ZC3)vEyY>TNaG> zynCBx%I?cm13kfhSGEUbW@URgl$8TB>=Yl_BAR%*qA|Jd#gS*!|FXTSc~zHxMDdHi z15Cr`5dDMS?^se$QaqeL79`(K_QSv##k@(;AgxL<`k2HIa)!a zL{pU_O)bKuC8fnBb4$hPnR~2-g%b~+nt!k4!q*MevoGw}$s;t9nQ!~+2v%)BI|P~@ zRjBCi9&CTlWgO}oefzUJux@B^eSVl1kk85W&TNWdn-WXB)w-x7V_#9{!xpHY2|l{p zcKAy*&!e0PGbS0N@%wpem<9H;?j@Fib-!W}Oo_N_fIQeAtz1kOT{DMzH8W9Dx0i>T z%c`2aC(1sriEmoTEa!&JbnI`>E$F-o&bP8P8g5j!cH%u7PgshV&G*uqH@ykgPCa^O p!?C3ow>@}0d&_a-&CT1r-WF@%9eamogN3mB>$(0bQU>bG4HQC z3k#D7tJajvJfMQS#2o$PqSVBaRQB%2skf$Nx;mEFAJ6}HHZ8w2EMp=IV^k^MdZC^g ogKsQJyBHwggU&QNapI_ql|yZ$G*>+NdqWMR^h&)ih`p@NN(iTz>UA?Gu*mX)UdHPmh4a=9%P zc~O9kiJgU+cuN@Bo6j46uF|R03^YoMS1I2x>C;l(oi4Qi|1Lc@N RihyA6|E)I;sU*J(000~VU6KF* diff --git a/bats/helper/testdata/20200113/.dolt/noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr b/bats/helper/testdata/20200113/.dolt/noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr deleted file mode 100644 index 47faecd50819655eb7ec298873b9937a9d2edc55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGJk260EyXO+Fx4{6+|Vq=BGtmk(%3x3%-q-{Ej1;H zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+qXA(iBJ0RY-0 BU>N`a diff --git a/bats/helper/testdata/20200113/.dolt/noms/ju51cbttj99itbsbk2svu7sij2tu4rhl b/bats/helper/testdata/20200113/.dolt/noms/ju51cbttj99itbsbk2svu7sij2tu4rhl deleted file mode 100644 index 2820e12a57cee57e3dbba2481ecc9ffb44907975..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1554 zcmb7EZEO@p7~Yw?z2z>qUatWZgE;hxl$5*P-dDe*($b@;wmmFIrAf){-0o~|b9cMv z?p{Bz{wN6`AO?&`A~Bj6h%}0c35hAyC=wtsB*YL>kzgW;{@^1-{ecmSb9<1$4}SP& zKHiyqXWn_9=gl5`>aS_wVn8jdVW4|3+1cHn3>9U%1n@2&2%yv$F~(Ff&U<)II;Wb5 zHj9`RlCg!6mBSX2aLFng#6%bwq@x zNn~W{h$c{#$?8>Dn?xpEgy$l5$uZt>iKYlJsJUMr8{GjjL7;m55#{ zkkuwC86-$1RMS$mQTw5x%JT!L%fOnHLq%*_#IUylXtR_fMO;~kqR4wTP!7^blBj>St+59oSrK*9Ea~3gM~;ViwN9j94T=cSC>Up^re~C4xM!GY**5G&f)Jga0B!6v%km)PWjX+}Z25A^ zmQCT+_ve&fz?~U4YhhYO&}r!7CfBpI`^D+$6@l2IuTPDM*Y@StYoe>x3t^2t0FP~XW~PJP7`QjjJa@)%(e0J>f|Zf88AI1C;IeU=E*j{d#m!wxUAukrw-R65_humm zzk2QIa_nO2wl{D-8H30}fcTn5#ep&yG9^A?yG4f8+D7^9xSsTefcGNyq>P z09C;)vo}X{$>fghx^ZainUT8VudbW8p!|MkZpWvM#!n1-pcCg_m}h9)IM4Xju0MAK z-1)%8IABAtNhy@gTvIEKOL8_Vla{Q~8fi{oArVm$ay%hKF`Z)E8s7nugzY^|y|BWvjuj~!}-Eglttc{7+x7BTNI^beEl8Q?V z4HudugJ6qr`>vBK@2Sa7>!ox0!UaVy59JOz!5_-=zK4ZZ5pZ(P7cZQ@ab+cS9s6U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+o>rs*#1EnW1Ttr4bOCC#R*D8JQ&+7@MY=rI;m}o20R8 z@=qwTGnAXY&ib0guKx+{db`>?S(umvi&E2y^)pfvQ;PL-6N^hyi`cs#r{0>9>FQWw ze?0%+*|hx9u#AZ;j7%b6m6>@!C3%TC`pHG9i6yBx6wgtg?9R7oWB%fe9GMIdu$cMx d)CYz3)e#r|@9_r;F+#;>|KED!kV^8q000nROilm* diff --git a/bats/helper/testdata/20200113/.dolt/noms/m297l94np7ub1bp8irhpf3eta6bpegr8 b/bats/helper/testdata/20200113/.dolt/noms/m297l94np7ub1bp8irhpf3eta6bpegr8 deleted file mode 100644 index 058cb989a5da19b46f77435e50c5403f0ec25764..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 923 zcmb7CT}Tu`9N(SWy=||v+q+D(&?F2qwM$bw3pFzn5mdpW zwd}#tD2O7WL|-iXFc2S7qSCOAK+!NU6naq9^76&s8WCYn$<&{*L z4a=7VSwv#q+68UG54<2ts-{4Spjq?3;f(=c zipr|xwK^Zt<1y$}f!;_Mu?z$NAvN$Km5yUWZ*+dvD9Rp<7ahDJ%NnU)W2<5*fetzZ zrbY$Tb&Zp+d~; zTQMUUk~9Lqiu9aa7F4FaVfI#aqu8t9SpB^L5 zF=bH!agU&QNapI_ql|yZ$G*>+NdqWMN_wE=o-+*3U>yOexk+&d*EB$xJR`*WdH4=OZ)M z>r)1^< z&B#m4(N8W)O)N=e?|z(mYf7f8V~PFo{C{WD@=L=qCbBTvd@1Be`QXXM$iyxxr77ki z)S7?TbeN5a(SSjO z)xZYLcIN(KQx2F01_lO3m}NjV!^|&Ci_h*mmo?WfnidTL9&IRrDc+(VUj_rfr+t&MQTz?qH(HuYLclj zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2U>bG4HQC z3k#EotX554YI$;gPHAo)yPSQH<=l@q|Fir#ytvrEU>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+xhSABu*_K}Q)N;9A%H^L0nf8aLl`Klu_U#0VAt@_*}%Ln_Jd0s!lW BVMzc0 diff --git a/bats/helper/testdata/20200113/.dolt/noms/oarahke38ufh3tmnfpafuvb51dfbhgmh b/bats/helper/testdata/20200113/.dolt/noms/oarahke38ufh3tmnfpafuvb51dfbhgmh deleted file mode 100644 index 0717c58dbe06db84e9462ee8471497db6319539c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 783 zcmZvaPe@cj9LHy7=e@UYUEN*X!YFHrJe2Nk79EOAMXghm6-B7M#`k93hwsn!X4Voq zL_tJK6ln*eA_6P$5dFJUAa$?^EfPbsqUg{e3cYNHYPYc{I`ri?%rL+2{Fu*gW=7el z%8jmVo7{(O%8BZS^6XuMa3W)aG9ASl41*dm=8A0EbUI_6doV^EBc{7n)^=jLL~UYP zsLUWemh048=7Fp^e?FnRMe`NAsmDy$LB5*AYU~i3qLQXx*4Q4?>M|Xsa?_@a6FU>W z+WYQeAzqSY)YJa%hKA3LJjk~y8RAigGe3aJ)8lnRfwSwbzdi!3n=NlAPh9-5MQ~I+ z#!5y_M5S(GW$C7u07%m9#3cYQ90clulN*kKawHTE0SWs3N+7-_tp*L(;+oN+d9KT$ z%t?nunT!-wl8W{tEO1$X>1jc!c{HWSr9mGGg`pe`M-?@&Q(9c!Bxs?cS8lInl3LvC z=&tBkqZBzUg+!Ay-E|oEh$-$~Y%)z?aLr9=nJz5o4GbTY`#9;8)X0L`NDW4zMYZ)B z@5xYEIEl@W90Wo5!jBMyN(2HNU%UGaumD0n(xEH4%X?S%kBlZZft5q8*Gle<&%iO~ zE6C^O!^wdlLaI^uq|MctGIadYKzDiD^6M?NhsIJLXYU`qR^?5DB`91fY+)ro4n=Gp zhXCEkP0(9#Lw zaH{lvps)JP<_2Cj>gLB%ZgzM242Dbh?SOwu0HMK1eV!F2cZnqg09A;2=-<)<6Zx%u Z>1AxnXc`tdB!&<^Rk$w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?ET)>i3Z7Qy>Un-`CR}25LHt~ diff --git a/bats/helper/testdata/20200113/.dolt/noms/ojdo9hafo3mvlko0cefqcom7os26utln b/bats/helper/testdata/20200113/.dolt/noms/ojdo9hafo3mvlko0cefqcom7os26utln deleted file mode 100644 index f52f1557b31e1cbd9010d8bdff155790d6a06548..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 211 zcmbQu_+b_s12dC`u6|lhX>o?Wd6KzNnsJi3d77D}fu(_wxw*MviiLTaiHVV=si}b> zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2$im1Z0#=!s2UL=mn4_Oul$uzQibJv9#ZF;Ci74hTM-CljfPlrX f&i<19xbzc4^D6cWKp{q``0W2%ZyZudeir}$un9~) diff --git a/bats/helper/testdata/20200113/.dolt/noms/os1po1dclurjkflegl02usl2r8rkg2cq b/bats/helper/testdata/20200113/.dolt/noms/os1po1dclurjkflegl02usl2r8rkg2cq deleted file mode 100644 index d6e77f36f33f002063d0a6594311d814a496986e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcG+#)eC+0Z=2D9OMe#l$GZ!ZO9u*fh<;)HKy3#nRH4 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+ diff --git a/bats/helper/testdata/20200113/.dolt/noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik b/bats/helper/testdata/20200113/.dolt/noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik deleted file mode 100644 index 1ab53ad2dc16a210b89edcca6a9872e44ec57472..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQ(LBjGInB~6EjiV~#L(E>#N5QvJki+DDACM3*~r+C zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!hX8Vei_$f z)0KA`7;`oS-n-f{@2@)x3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?Dot1ZccsY){Sv~1p51_;=?E`(*)lbGF|$4%0E TfkKQ>@#Fuu-Z-R^{4M|h&hb!T diff --git a/bats/helper/testdata/20200113/.dolt/noms/qqc5268agbqc0nqdud6gn7m202teffnm b/bats/helper/testdata/20200113/.dolt/noms/qqc5268agbqc0nqdud6gn7m202teffnm deleted file mode 100644 index ae28d8ca6d1768bbdc1270ef23f534fac81f31d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1069 zcmb7@TWHfz9LCQ%Nt&j%uHC%DRGf-BwNBmEPU|MSi6B^}vWH4MO;TH$CM7wYQ&2>3 z&dY;Wd{Fl=W!^;wipU;R6mN+7;Ou00!5gB?DKa0#&6Dc1qCR-Y$@zzz{FCqZeL2iD z3ywM|sw8j~CK&RPuBH;2$pKbyRcn$iD{`d{^OkWr^o}U$nn?^C(+J%G1<&vT&qx;K zj4tS{6v^78g6x`3L@lMNwj?%i!n6V4ikTw4Afg@-lW_pqcubQKLwm3qPACW^;|#&8 zApn45nzqxWtd5?9x=}Xzu9&u3SYd~lfy?a`o6q(w2NMMnODHD6iKMF@goS#x?Nnbq zaI-1e(p5KC%5m%z*uY6WN@=X~{y!;zb91vh#ZMDsxY8%DPHKIV>8wPM|HL zmf}ZEuC;o==W^=lF4~4 z{kKR@z*A&pCJ_3UGRQ;dL`aaicOhM(ZZ*B#*DxwH;dn66cqj6@w`0?>LZb_eN7OBZ z+`Q1A2K1;&1H1XS>=W!w*#L*8%3B)!Gg`Xn+L;~R>=0Cx%VjMMWFepqp$ fb;G;+llR0AmK@Ec&#-jT!Oa^um%cJl>RI{?j7VNx diff --git a/bats/helper/testdata/20200113/.dolt/noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 b/bats/helper/testdata/20200113/.dolt/noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 deleted file mode 100644 index 3bc9ec8ae22c3271c2ac4146a9f0cf7021ad0834..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQ$<#PG$t2Cxz|zPhCB?$n(8wYs$vDwCB{eBI%_zy7 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!hX8Vei_$f z)0KA`7;`oS-n-f{@2@)x3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?CtxqH&W#)Q?A_QX7nVSs?G*IgUfHg8k4H@>p} U7Ep*0Dt`R`)*FXZlHUaY0Jxh{@&Et; diff --git a/bats/helper/testdata/20200113/.dolt/noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 b/bats/helper/testdata/20200113/.dolt/noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 deleted file mode 100644 index 71ffb97f2a2dbd98345c312f2aee5e59103085ac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGJT=KM&Dg>sH8C~C+|bO>*wn-{In~@SF~!o*#4ydA zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+?%jcq9-g#0VAt@_*}%Ln_Jd0sxNG BV1WPt diff --git a/bats/helper/testdata/20200113/.dolt/noms/s69lvejsvg9so3l2nsquavmbai4dmu03 b/bats/helper/testdata/20200113/.dolt/noms/s69lvejsvg9so3l2nsquavmbai4dmu03 deleted file mode 100644 index cf28c6f19d27c86cc8f6c3c0f84dec04693c7c37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 934 zcmb7?T}TvB6oBX6`Ez7t88)+CicldRYTeu|f6G{PUwnv6ix9>;Gk4v^`PpXfBKDep zAw-4{7}!G;iV-SQWG@v#4-r^_lmtZMSrH%rCSkPY3I54x;&Xh?cZDN-oGgEXbs`|B!H*V4rhN<7K z-FppkGZIgbYGBAYcCRb0Bo^nELW%M2sgo-$K@?q89NQ*9@G+@n09mAJ;+-=?EnROT=CUziY3C}&-p!2h z63>^XewxU~^#zC&kPmfkZT)XNUViZ3aB_nj@kXMdatjbYP)#v5dFU~gEH1eMa^nKS z!oB;#Nh9l~!d0;(uBnRXQBAK@qcMzQ)hMDLs;SY`h^As)tO#Co4o7xfzE!taJ-^GWa8LPl6~ zFe3OL$;Y4G-Lo+kUKb{&m-|aV*R)46`{jM^Vaw??dS*AY)3evFmo%1Wyr6L{f1L8$ rG8zgtKA&uQ^O&EkYZz|ryV^fzd=u4PTEo$xi=A4({pwMf_W9Tk_ZTf% diff --git a/bats/helper/testdata/20200113/.dolt/noms/srlc19tj78ldn4hbb8duso90i1vugc59 b/bats/helper/testdata/20200113/.dolt/noms/srlc19tj78ldn4hbb8duso90i1vugc59 deleted file mode 100644 index e094d57e4c6139808844968770ae1b9ec5f90e60..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 249 zcmX@k_@R`IfrUv!S3fPMv^YcG%se&8D9Omg#Mn5++}tqP#3IEa%^)$&+{8T9*vQh5 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#D7tJajvJfMQS#2o$PqSVBaRQB%2skf$Nx;mEFAJ6}HHZ8w2EMp=I}tD005-sT&w^9 diff --git a/bats/helper/testdata/20200113/.dolt/noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa b/bats/helper/testdata/20200113/.dolt/noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa deleted file mode 100644 index ede082b09c7ee8ddfec490b61f2e30a2f144ff62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 309 zcmZQ#VPKrS)j!_y0VkVter|4N2{TJ>YDpp|0|R?OVo_>dNihcl18Z4gPH8H8LvT)F z!QD2sI~-CUJuc5X^f#81hk;S={;j(%ADr137@0J5_0w`ni!=01j13G8j4h3mOcTwL zl2VLJ%uS3;4U!B^O^i}f4NTM6HTfqL*%``BUuS*IV%Pr!cfDQhoh(fI9!IN6CUEkk z!|$vXvwz<)jv~F)$qa7$^1nOY{ QVi1_|f9s7yD#`Bx01H-UlK=n! diff --git a/bats/helper/testdata/20200113/.dolt/noms/u62g6ma6evirqjb11i0up0p1hppb50ou b/bats/helper/testdata/20200113/.dolt/noms/u62g6ma6evirqjb11i0up0p1hppb50ou deleted file mode 100644 index ca0a5d5761261a4f1209f18936be5c3b703295d0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 284 zcmeyu_@R`Ift5)^S3fPMv^YaQ$-*cx$-=_i%)%ti*xV?^+|U>bG4HQC z3k#EotX554YI$;gPHAo)yPSQH<=l@q|Fir#ytvrEUoovzaT@~!ys^HYqTnJb YtyR)6zZ59M2o?YGf9s7yD#`Bx0EMe*g8%>k diff --git a/bats/helper/testdata/20200113/.dolt/noms/ug6l7o53ntp50f252u65cj96om411v14 b/bats/helper/testdata/20200113/.dolt/noms/ug6l7o53ntp50f252u65cj96om411v14 deleted file mode 100644 index 50fc9117c9874d15a578b21b5457111e0b7f199d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 926 zcma#uz{bEN#3aDL&m_bqu#J_8B_**WQQ(@G2qOan1K-tkXYa|s@lE*uUtpt(z*PZO zEd~}&Efvn<{M^)%jLf`rS$&IhOW99+4uGim((T&Quf5;_=-ncMX%u7eeO2nSx#0~)ecC2AbS@%9N0nrWR!}* z10;J=&{oip1?00BTs~uDXJq7IV&Y6;eG`+PT+F_#?e)|$i5R7ofwmQA)1H6W)3idn z=q7^#6EL=zm;~54|J`5!BDWh1PCW7sUl>1>vN5nSY3S;w<&+j@=o=cD8z)($Sr{al znHeM-Ct9YNrCKH%nV1_}CR-$%Td-^LPbji8l$*ZJ`kKYA{|WATyV^Thn3#ltkzcHz zk(!uNtPhODw4BW35_bJP-+DeWbIraWcK$bqZR|hCZ0#5pRwhA^T3(%s+{EIN)FSrN zZT8E!CY!Fj)4-UsDe&Iaj(LCGSy-4vWVICXQp+L9rA(J$3NTTm7Ud=8=qDGYCYGeK zcRx8YTN=HrvVR_HKZ`$K7mDOY&ohmXXTz*=S+s&mWbwE8V SKnw)TU;l5taY!ZkT>t>DRW^M9 diff --git a/bats/helper/testdata/20200113/.dolt/repo_state.json b/bats/helper/testdata/20200113/.dolt/repo_state.json deleted file mode 100644 index 793216b5e22..00000000000 --- a/bats/helper/testdata/20200113/.dolt/repo_state.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "head": "refs/heads/master", - "staged": "hlgmnafjvlg8curcjc14dok7k1h3mqci", - "working": "hlgmnafjvlg8curcjc14dok7k1h3mqci", - "merge": null, - "remotes": null, - "branches": null -} \ No newline at end of file diff --git a/bats/helper/testdata/20200113/README.md b/bats/helper/testdata/20200113/README.md deleted file mode 100644 index 113afd10d36..00000000000 --- a/bats/helper/testdata/20200113/README.md +++ /dev/null @@ -1,75 +0,0 @@ -## Overview - -This is test data that captures a repository on January 13, 2020. This may be used to verify that any serialization/deserialization changes are compatible with people's pre-existing data. - -# Branch master - -## Schema - -``` -CREATE TABLE `abc` ( - `pk` BIGINT NOT NULL COMMENT 'tag:0', - `a` LONGTEXT COMMENT 'tag:694', - `b` DATETIME COMMENT 'tag:2902', - PRIMARY KEY (`pk`) -); -``` - -## Data - -``` -+----+------+---------------------------+ -| pk | a | b | -+----+------+---------------------------+ -| 1 | data | 2020-01-13 20:45:18.53558 | -+----+------+---------------------------+ -``` - -# Branch conflict - -## Schema - -``` -CREATE TABLE `abc` ( - `pk` BIGINT NOT NULL COMMENT 'tag:0', - `a` LONGTEXT COMMENT 'tag:694', - `b` DATETIME COMMENT 'tag:2902', - PRIMARY KEY (`pk`) -); -``` - -## Data - -``` -+----+-----------+---------------------------+ -| pk | a | b | -+----+-----------+---------------------------+ -| 1 | data | 2020-01-13 20:45:18.53558 | -| 2 | something | 2020-01-14 20:48:37.13061 | -+----+-----------+---------------------------+ -``` - -# Branch newcolumn - -## Schema - -``` -CREATE TABLE `abc` ( - `pk` BIGINT NOT NULL COMMENT 'tag:0', - `a` LONGTEXT COMMENT 'tag:694', - `b` DATETIME COMMENT 'tag:2902', - `c` BIGINT UNSIGNED COMMENT 'tag:4657', - PRIMARY KEY (`pk`) -); -``` - -## Data - -``` -+----+-----------+---------------------------+---------+ -| pk | a | b | c | -+----+-----------+---------------------------+---------+ -| 1 | data | 2020-01-13 20:45:18.53558 | 2133 | -| 2 | something | 2020-01-13 20:48:37.13061 | 1132020 | -+----+-----------+---------------------------+---------+ -``` diff --git a/bats/helper/testdata/20200218/.dolt/config.json b/bats/helper/testdata/20200218/.dolt/config.json deleted file mode 100644 index 9e26dfeeb6e..00000000000 --- a/bats/helper/testdata/20200218/.dolt/config.json +++ /dev/null @@ -1 +0,0 @@ -{} \ No newline at end of file diff --git a/bats/helper/testdata/20200218/.dolt/noms/0np979l706glgvkrb60qjutfsvqp2qha b/bats/helper/testdata/20200218/.dolt/noms/0np979l706glgvkrb60qjutfsvqp2qha deleted file mode 100644 index 30e0e03573e63bf95ea9cb52a0a13d0add964783..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 211 zcmbQu_+b_s12dC`u6|lhX>o>rl0k~OX=;jPQlhz;sj<0*X=FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2Aa0#=!s2UL=mn4_Oul$uzQibJv3)O%azoBcf+nf&uF0|YFt fzAN}PYs>XZHz!-<1BDo&;Un-`CR}2ydg{D diff --git a/bats/helper/testdata/20200218/.dolt/noms/19358uq7gd25das63fisbhs5hgr5bjl6 b/bats/helper/testdata/20200218/.dolt/noms/19358uq7gd25das63fisbhs5hgr5bjl6 deleted file mode 100644 index 518392441c2531078a14b141cd86e4d8dadb4649..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 211 zcmbQu_+b_s12dC`u6|lhX>o?Wc~YujT8gE)MQWmPvW1zYsX>ZqsFcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2QPEmH(M-Nc-q)$HL4c0#=!s2UL=mn4_Oul$uzQ%D%wU$>+Iw(OwOawTtJfm8hO9 zZ_;F8oVc@fs$}HRfBK_5gVHp++^Tk%XRi!=9z*CD%6DT7K4_| z0P(2lI?%T}(Ih(9Ca|Ov?HZ~+W?KEGLltJ)gfeXBORrD={Cqi4QlP}sBIT38)lW;) zSF>^+d&FVXF97-NLUvzw(|P#yam$wN>#3Q(wT`yboDfQc(Ezpzq-{}9<`VY=G!?zF zcTA{&yh?)t0)D?-)KHaERKvBHX7p;F>oOoQ+-ngkL0LhlI15G39i&B6&v8SVNBU%` zOyvRysj^aZ1Vyu*JOCi;u2rxdij+W?qq_z%I#6f`1^HUjU57FcoBZE^Nj3gD)7(BS z-;Z9j`WQa#XTy17I(;ruLXq}RQiQ>1yP$!1M&c~CDU?(}6?j3Q1Out+ZqBDU4+AxV zh?@M|5U7s=!Pjv7C4^gQem1 zO2B)$5^z6?(G|(MI+dT@Jh&&Bs>}48d(yq_(24Mk(bZF)0M=uW_euM0 zjL7%X2QojJz4`j^(}#EKSnd14i*XS=N-kGz9*L)BW^2!K&)}cnMgTm503Rp+7oVKC db*I(YYL$)rYTf`gC_xY>{yhJ(Sfj5T{tL^7(R=^^ diff --git a/bats/helper/testdata/20200218/.dolt/noms/1cnrtr8avnmntcjf7sk1ls124vd994o2 b/bats/helper/testdata/20200218/.dolt/noms/1cnrtr8avnmntcjf7sk1ls124vd994o2 deleted file mode 100644 index 917fc20e017892ae7c095ef34af91e2a99aae77e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 885 zcmY$N!N$NS#3aDL&m_bmu#J_8B_**WQQ(@G2qOan1K-tkXYa|s@lE*upWoinvz_U~ zDo)mt#H5^5CYGZ7@?!R7F9Xwj0}GD6f2W)u&vDT0@zKB=Y(hLt`~pHe%uE6zj9kUZ z8L7F6@kOa=?2$hIeA_4 zlJiqiQ=Gv9to%TU_~iV&;*z4o%)F9f-pu0og2bYd`24i^f^3$&#N1TolEie5lFEYA z%)GRGR!%{n0i2F3dBvQjEKK~8jydrlIX0lC#N1*gHXa5Zp!XP<7&-ZY3K`85LV&WK zK%GpyDl9A|j0QSPOiUmZAi&6OAUt;x%LPuJl>D5M_>`phqWt_4MmBIj6tgifF)=45 zC9^kN>s3EAIqKBj12*i<|5{v3JwJ+Zva+gnK*9<+B#?uM9TWtNQZcwffK~7US^gJv z6oh!4A)Zmw2b<4%%aOg!z`|<40rWMa1}7sA6BB2Os&Gtxaxwen30_8~W@Zj$D7H8-un;Kaf znk8E#Sr{dnBpI3~S|k~y7$hg98C#^JB^xKRYw}MhvNM#MzRvoZ#jgJe?s~i0J6V{R z1cB+LSU)2*F{M~PH?g=RwTONHff(BmgIcEht1RS||Cwz_`{-=P!ptNBRtZcLsYQ8- zIr_;(sfi`2>R diff --git a/bats/helper/testdata/20200218/.dolt/noms/1j0kapej1j3vcjtl0v5g9aba56gnsocs b/bats/helper/testdata/20200218/.dolt/noms/1j0kapej1j3vcjtl0v5g9aba56gnsocs deleted file mode 100644 index 1fce6890a93c0f751290f2e265691eab72ea8c63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGz``uiDA~*)G0n^<(a12xAk`?vB-tW0Ez#UCEhWi- zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!XB`b^NY51 z|A)>@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXtEG^aTArMrQ<|GsrpquTGY_abFEK|yxhOTUB$a)Er<2cf^P;^PB5N1VRVz_F zS>B|{!gyZPVYhKeQ_TsN=o1VOa4lqh5A*c1p@o~1ALs&w7@^`{{%^f;NG17Q002wO BT)F@N diff --git a/bats/helper/testdata/20200218/.dolt/noms/29sgublh0pevbk65gg7e6ifio0r1pbg3 b/bats/helper/testdata/20200218/.dolt/noms/29sgublh0pevbk65gg7e6ifio0r1pbg3 deleted file mode 100644 index 480cfde0dd4f9d96119193f39dd62cec32429de6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YcGI4Q-zAlcBw!r0u%EG@~@*di&-*gVzDG$q+M$=Jk% zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!rr*jVjAzm z$ITfV<&LH-l%4!*kLFGm7A8TET3#KI+{EIN)S@^o1_lvUttpv#Ku%s_j(&1cYGO$$ z`vOlVpXcU9do@JXE}pAaqI$BtNt1=~+52aqRoQ!1y*%#~!T@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXtEG^aTArMrQ<|GsrpquTGY_abFEK|yxhOTUB$a)Er<2cf^P;^PB5N1VRVz_F zS>B|{!ss{m=etjG9p)#e9GJ=g0oP_tsc!8$QNb# diff --git a/bats/helper/testdata/20200218/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt b/bats/helper/testdata/20200218/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt deleted file mode 100644 index c41b419f7c20cf86bd1a0030dd7abbbd06e7ef12..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57 zcmZSPU}Ip=+7fK=!u{H&Tf*+M7$AT%eP#FypGmJ@6s*v61`07k#hL$ay>Un-`CR}2 D-mnpz diff --git a/bats/helper/testdata/20200218/.dolt/noms/8tk8khk3qfdloe8bbjh9avdpp1n5f10j b/bats/helper/testdata/20200218/.dolt/noms/8tk8khk3qfdloe8bbjh9avdpp1n5f10j deleted file mode 100644 index 8acde9be5736aea6a7e54e9344a56930e4efe843..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 977 zcma#uz{bEN#3aDL&m_bqu#J_8B_**WQQ(@G2qOan1K-tkXYa|s@lE*uUtpt(z*PZO zEd~}&Efvn<{M^)%jLf`rS$&IhOW99+4uGim((T&Quf3q1>BA~c){?}eoKz;3qWtn= z_G-8H)3!YEO6b-zD5DznxfCwX3adJj#Zen~ z->*rRGzh+SSoG3oYgc7fPOf0E0vDk37}=Bab4qjbidi{%UGtLjQ&Ll$!2+!OK#BO| z{Ji3lqQuO+l49P>;`oBZqLTRhwD^K-mb}E=ROXVzbdHkBg4E2sw0u@hL7)Mgjx2e_ zoTe;H{F072@gO-ipr*v!VkR~o1|DEIFfcK4@&gqznkj?;Wj%p9nRr!LSV|ZTbeNc! zKq^3haeHn}(j=A(oIEM{IVJHaN%2Mb`6Y~O;D9Iw1~e0MVp1}D;mPVV#}}k8<2kbB zS527jzVac%31hQPT&T&w0y{ zz0JVFYQO>XHKPV6BM%c3XNszDOn!1P`{oH=My6(JK2gMfw{)Bor|)N-zPV zn2AZ?-+u-mdi9^7$}GL>3*(1UHU?HE4PE`ToYLY9eN(gKl;kvH)6`_+6hjjr)6~@1 z(lpJ|(7@2rAlV>^U6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBn(V1#rheki7CbUz<5u~ z$xJR`57^21MccanLuaOvJEJDYQ75+M$1JQ&f*`fLIu*Hz#U-gl?2Riertv;}+?=sd z?r6$F*~!25XzpZTVG@zmQpig!horDFU4|*Zbd*|@mzblUT$GwvlFGio)5+(#dC^`C zk+qBGs+FjoEN{|eVRUh`u;CXM*Zv)y^Aea8m|>9&N*1uh4@x6v%)iu`o(^dMGC}Dk z42b^#m8b&gYsi@cIdK#ResxLj<$F-_f3qsbp*Q;dPkHtwI0r=n^{@ajh|2oE^~NEU HP4}mQO z+A%sbEk%|zu$Sx3)k@O^(^(s<5L}HK+`CyGi&_jQ|VTPGMeBb{!@8oJltamKS zpdQ}B6e%(g-|C1Wk=HTNU{0;BV?9C~_Lwm2_K55B2-re~33GJRXFB#?(>UE_fUVw` z=466B&E41~hGRp|mRKckBMZZ<1_VlbBS#Ih)3Av`4GR;BtYl#M{@2-av8*nFT{U;z zb^o&ub7O<8QWCk?rbOm|G%&Vv$Tz=`N{nxq(nkxguDpm&R6XZ{v5?S>%r0Cr%_-^F z2qz5ZU)+`A@*q>d&j~=5rHu08gyPj5ld5`~>N*YuB1LT`CL)v+LC8D>d6tG`5G}zH zsVB=thDSMalIRdZ}YU1YG4 zeFjn4^i*}?YO+&!TJ52zU8a3WY}j!}P=dL&!R0r&LNPhuX z4X@Q=7?g)i5A>im4M^WkuD>!qd=HN{4XXXer_*-|%C?542P-{L z`Gd;Q2q0kS=Xvl-jC4}LlEzI#qf+yP@}qS3rKJnT#{D2FPt}R31zv!` z!m?fq5sKaaejLxkkg)k01BG21nH8Fg5yjHY#=532JKUEgp@+9_Y@)@}J!hjl80Z*z z|F;dt^!o5h>OeaFfE@wH!7$rX|F*Ahn0ZqT9u1A%on7-lwwU;tUynad7HNykzX3R- B?ScRR diff --git a/bats/helper/testdata/20200218/.dolt/noms/LOCK b/bats/helper/testdata/20200218/.dolt/noms/LOCK deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/bats/helper/testdata/20200218/.dolt/noms/akkjp98avt302ttpsc17fbbjjj3bro6m b/bats/helper/testdata/20200218/.dolt/noms/akkjp98avt302ttpsc17fbbjjj3bro6m deleted file mode 100644 index cef17c7c425a5de15aac51c52e48a97e34829bda..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 296 zcmd1%kjuuv#H69CpO#ZvoS|=SmSmiqXl7z+Zf>4xnq*{blw@vTVQylUnrdlcV35MD z$v>gU&QNapI_ql|yZ$G*>+NdqWMN_wEJ{r)*3U>yOexmSO)M@+En?q)AjUStpqA4 D65MA; diff --git a/bats/helper/testdata/20200218/.dolt/noms/at3q7mfua3danpflmntkbnvjhl91nr7e b/bats/helper/testdata/20200218/.dolt/noms/at3q7mfua3danpflmntkbnvjhl91nr7e deleted file mode 100644 index 5a39a4a686e371abe5d785363000a7548207029e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 249 zcmX@k_@R`IfrUv!S3fPMv^YcGAjQ-o%`nl>I4R96&C)c@z%a?&%q%T2)zH#7(bOWD zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!XB`b^NY51 z|A)>@C3i+mj-yU&&5v1FnFK*?a|!H z!onoNsx>7u52zq7F-JeSC^fMpm3@Jylh1SWqP-d-YZuQ|D^WdJ-lWOGC?zW~!%_Rc ouWegy9|HuO%->>kKv87xRfBUnfo?Wp-Ea|vPrUmX|j<~N{W$bTB4wnq^8-in+NV zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2QPEmH(M-Nc-q)$HL4c0#=!s2UL=mn4_Oul$uzQ%D%wU$>+Iw(OwOawTtJfm8hO9 zZ_;F8Jh%M9qnR`NSXv*t%x8dr#aA^yu)SKDx#HXP=~X}>MyUAg|66YyQb~Rn0066a BOWObd diff --git a/bats/helper/testdata/20200218/.dolt/noms/c9i43jm5ubijsvdg3679hld9p1otrmhk b/bats/helper/testdata/20200218/.dolt/noms/c9i43jm5ubijsvdg3679hld9p1otrmhk deleted file mode 100644 index aec8406b9dfc4474dc52f45782443f619ee2f555..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 675 zcmZvaTS!zv7=UMH&z!Tz&bqs~hJw*zu4uw~0apnXZ4J^agrrcGj^jDAdGK7eGqYZZ zAc`KkKt1%3MHKW9MOKiJJxC%%2oVG&zEm$kn9zkH5JDS+pofNG`2U%YpZ}YgH*$+A zr#;89ctCO}Cu$JNb0*la@#IjM5NhWO1ZMUtXc?;HS zNyFO&TYE>T&n(YHf%;^fekBZ)5*d-qrP6e z<#KrD<>Kvg86`)2>T(tYP`S~ytLI~rKU)=>x_PaVClamH;P5f_x%JEjR07HCo&e zZIn>Bv;*j{x=a=* zyP+{v*)wqLZeRKS{@8^RUk9_RAhKCN5scT?fta7x!Hb$HG%zCz{itwawZoK{tkxln zQ(t*Hmuc;*JC5GpY2LPdE%hM#E!`#sPz>+5Bvh#H61&#;^C$lMJQ7@-yw|aBaO($s x^8AWuAO0;U;*E4wEQkLszC54$@vboOcInxxesP92C;$TY*B>p-R~Vmre*2pmzI;6T*BVC(qbC#!^h1T8|99sER>!6Ymeqm z78WK!Ssjtw#Nv|FqBt!E1`$@RDVcddPF`Y;esWQ2Vo56d0#7HO=jKIwHAL1fo~u@( zda}GplZA2Ri+lI>?{%BPmEXa|00H@*q8uMas@#%bwEnXQD8vXAZ~MRX#vzsDcL4y{ C8#vnl diff --git a/bats/helper/testdata/20200218/.dolt/noms/e1hhji1sq277j2spo9defilqjhb31tnp b/bats/helper/testdata/20200218/.dolt/noms/e1hhji1sq277j2spo9defilqjhb31tnp deleted file mode 100644 index ddb3194d326252b041349518eb51daab3adc5367..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 211 zcmbQu_+b_s12dC`u6|lhX>o?WWum32iHV7!nT4@|L6W7RrI~q>g@K{DrLn1@iDjZO zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2Aa0#=!s2UL=mn4_Oul$uzQibHYFbN#2MdX;`1)qJ^<0Rk3> fZ+<*=PUoae_NG>RKp{q``0W2%ZyZudeir}$OUy`a diff --git a/bats/helper/testdata/20200218/.dolt/noms/es163dd2tfgc03k6g0eikn5obr9p52o5 b/bats/helper/testdata/20200218/.dolt/noms/es163dd2tfgc03k6g0eikn5obr9p52o5 deleted file mode 100644 index 33a7ab89c0de1b1d1676fec7942f2f7a5aa5c761..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1233 zcmbW1ZEV{_7{~9<=h#;zO4Ap?kXD7hOwH&>+NNouO4ZtJOocM7EHHs8xsL55W{w@~ z%hHw)V-0NW3R?veNRyD5CT%daFsS&D4L$%W6MQNlRYgd^RB60wt6*P1KsmRJWn!N= z*}i*p&zcFyieaQ0aqQJcE`i<>U@J=^ zlsPydZh!6qUphVkFo*7qE*mn{P)&iR<>_YTY8ikODT`-k0ffiP0JDQk21S)^P4%2cp0D>`od!T5 z)A*fscO14@2pPhw=;8uQgec_`w4! z3q#AE8ZYu!*LXQpT?eb2bqJEJrG+m?|D55j&t^77_APx>|M{;yyPEhrQ>tL(V*3xI z+r?j(-j)4d!Fdv3kVzjl9n$53>@(Iu{(}#Byuizp1_%;AON6mobbQSiQy6JO2)P+< zgDN-w(~EeKcvZ`wlA4li%c9V;E(G%eLY$mZgiF(7`y0MXZUuX-co=MEdHU_K(Us$naEUWAC+ zQafxZjxay-U`JPM%it4F&n6r9JYIL=nbi>+z`GGcj8OGoYk*xpu7M}5-!9*Ps|63> zQR}vF+9){La3a&>rO}F-C9D4%k6SkM}iqO+Nq`zLdZX3_qI2@@@CIc{Nmck z?)xtuox%v!GQT+CtR|~Yn0=gSLszJEdV2FqzrPnMV~pxHZw;DSapOO5a2q(uJgwQLY=jkCWBwOj z8|WYWuG@aUwQlart6ONxC&h^nhF{H1Jt78^kBW!RC7Bh_R&>aCYv+-}Y|PyR?poxg zx7pYYA7hU{Sl`0>rAoh7n&Z>)pRdeO|H#ndz}OeV!Pj5dbNTE1#4pdXHJIJ3dCsl9 LyZm9Za&7P5eQSGF diff --git a/bats/helper/testdata/20200218/.dolt/noms/fe1m0kokam20d7jr8t6acg95s9iauabm b/bats/helper/testdata/20200218/.dolt/noms/fe1m0kokam20d7jr8t6acg95s9iauabm deleted file mode 100644 index c1265375c0b5ec084a8cf19527d35858f13021dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 330 zcmX@ZXv4|ooS&PUS;EYcn_7~{$-&4Lk&;-F$i|YATAa)z<(ZdRl9`y3S(U25C|;pZ zlv`c&=KB>dEpZO%_H2t`A@8 z8dm;3mTK?Ez`(!=Qw3y$zzHBWL)PI{pT(C`TQcK(>|sTq91}BA~c){?}eoKz;3qWtn=_P&GNnkBES zGda%jA5&YlPC6iBMG2b_4->zD5DznxfCwX3adJj#Zen~G zby-*aE^xI0Cs#07feX+{jO@wzIi|e$YZfp#UOw5T%$?O#~M3i3aGu>ELut7T`RC5l;d$CNEfI;>)a(J+V{L3g6gUh?D zf)~j0te~SH#GefDjG8{!yvbXR>_;CKaBv`b5*Qd-XVoV(0izh?P0p13oRavI{N!Tx z%@e$gOwH7MqN>+~DEUQ-^f!D+!0TBiVB|9~34r|yihNw2r6g`4i6f8KRDcPXIP!RT zKpqdl=5g0NR>EGlsX5*}i{%6-55(I^@kROhC5&v~q+ZO%$i)6}!sD#3+a4}0-*PB8 z%cNM0E1QO>}^YQO=Ea7GPI#sX$=I%Z^l8!I(w`|w|Nb%n(YwD48i)kJ$n|Hk$8p9FrECl=Od7iSX*s3E8Tv+P z#)(E|1}TOqhK9+>7AC1FX-TFgmZnCQCdSD|Nv7wki~-mdme z7A7WPV98LdpOKoFQmhY*$h4fy~m!uZOX)!Q}uxd>K76_?Dd5Jmt$wjG&C8_KSJe_==n-}fX5Lvr;u3Cxe$?_&m z7RDJ1S3G1tIsbC_qpBysJk65CTb|-M;~E=~%?iuTpu7$%(SU3QSm*$m%&-IiWP=I@ zFChK{#Lt2FH&B}{klu=13L+N`$cY9yq-ER>6}&muaMkhN=4Pv8 diff --git a/bats/helper/testdata/20200218/.dolt/noms/h37m8tmlu1pco0de4fskh4bhjng0iiqj b/bats/helper/testdata/20200218/.dolt/noms/h37m8tmlu1pco0de4fskh4bhjng0iiqj deleted file mode 100644 index d10d84c2a6df40def3d4d7dbee975cf5d1dc081a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcG+&C>c**GoHz#=i#Fg4jC&C)#8#M08-!YswY(89uq zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!XB`b^NY51 z|A)>@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXtEG^aTArMrQ<|GsrpquTGY_abFEK|yxhOTUB$a)Er<2cf^P;^PB5N1VRVz_F zS>B|{!pI*a>CWo%a^3sd4<8vI;F@co(B@T>5ASY#yz?ngh!HCO<^R?jhg6c^1pojq CgI)&! diff --git a/bats/helper/testdata/20200218/.dolt/noms/j3qdmkh5kies7u6u0p5q35qqvsdrnqmh b/bats/helper/testdata/20200218/.dolt/noms/j3qdmkh5kies7u6u0p5q35qqvsdrnqmh deleted file mode 100644 index d20de9d94c9a380bab127fa86f4dff538f9ebfb2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 284 zcmeyu_@R`Ift5)^S3fPMv^YcG+|ts*$S5hv%rMQsC^^ME&C@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXt5uViTArMrQ<|H{E>J8uk>%v1oaf$_lE0TP<(d0!wh{{~ukMu0JfInQi8=bo zMX8A;sq70poqV2~7wy#$S-W_yT8Zk(@+M6dM&`;7OBIYSR(02#=rTaSn|bfftKBj+ ZHK_S~`6N(?5i0)W|JECaRFdBX005C!W(5EM diff --git a/bats/helper/testdata/20200218/.dolt/noms/jaa1npmvf5mvmjfa5g05k97csb6lmetj b/bats/helper/testdata/20200218/.dolt/noms/jaa1npmvf5mvmjfa5g05k97csb6lmetj deleted file mode 100644 index 5158a1f0e1b870d49e9689aae95e0eab0af3ee64..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 809 zcmZvaTS!zv7{_O3XU^H9yX|hRq}0YDDp|T(U{{f}Bq|A^C=%f~o-^wnI+yLtsD(XL zQjk4#@1c^4$S{hs8yQ6sMHxXsA-zQi83iH~JrrHWqUfQIZC@>~>{m#V}rbr_nm;+HhJ(XuyNF4u(RFfOQ*jqbVf z;pOhsly=U1{qJt%{p*qbea&i?`pgwP2%x&Nf6=kwYDNGc4xWW;ZsZAJ#2AZVhG(!>)FlZR&_wowxHOSWtN-vh!)GMja6Y3DX0ZH zEG<){mO30MArOKiAq2HZctLW#l&_L<6fOdoR0bswoLv9`E^pd^p$!lU&{jj;GTim_ z(do9n(1Yt=wmW&ZFMnwL zDZYQlM2in#K8jA2vgr4jNaov_2%w`S?|QDmAq8MGO&Y>0GK`wMLQKeut`gdo?FP-fz5yiuuyGk((g#nd1v$;jBu#Kh3tGA%8|IN31Gz|hQ` zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!XB`b^NY51 z|A)>@C3i+mj-yU&&5v1FnFK*?a|!H z!onoNsx>7u52zq7F-JeSC^fMpm3@Jylh1SWqP-d-YZuQ|D^WdJ-lWOGIOC#8);8-k p-9LhE>M}sUNn5i6Gj815X_jWU`5RD(5h{NC|JECaRFdBX003xfSoZ(` diff --git a/bats/helper/testdata/20200218/.dolt/noms/kef5fdf6ipmeoaqjvaucfeutvigp1k5t b/bats/helper/testdata/20200218/.dolt/noms/kef5fdf6ipmeoaqjvaucfeutvigp1k5t deleted file mode 100644 index 95d2c4727663f68ddaa38c3988cb0973ea8cbfc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 284 zcmeyu_@R`Ift5)^S3fPMv^YcGG%3l@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXt5uViTArMrQ<|H{E>J8uk>%v1oaf$_lE0TP<(d0!wh{{~ukMu0JfInQi8=bo zMX8A;sq70poqV2~7wy#$S-W_yT8Zk(@+M6d#uJ8xv%`2>*A#VjzGQ%aH;Q44Uw_Vj ZZ(COJdnQnb5i0)W|JECaRFdBX000p*XI=mR diff --git a/bats/helper/testdata/20200218/.dolt/noms/m06v03lupqbb7mjj3b1v0n750n28iusl b/bats/helper/testdata/20200218/.dolt/noms/m06v03lupqbb7mjj3b1v0n750n28iusl deleted file mode 100644 index 42acc15948aa9a04f23bb646be9469f6751ae0b6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YcGGBL?K*&x}}%re45U)?z diff --git a/bats/helper/testdata/20200218/.dolt/noms/m1plgie64ceiqsiodf91v49g5s0v47aq b/bats/helper/testdata/20200218/.dolt/noms/m1plgie64ceiqsiodf91v49g5s0v47aq deleted file mode 100644 index 4fce5aeed19de311b4a8a9d9f037dbc7a2e74585..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 211 zcmbQu_+b_s12dC`u6|lhX>o?WS(>4VMWU%mnsJ(?p{2QHl7UHbN@8lNxj~wVX=;io zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2QPEmH(M-Nc-q)$HL4c0#=!s2UL=mn4_Oul$uzQ%D%wU$>+Iw(OwOawTtJfm8hO9 zZ_;F8ynl3Rg0kl z1Vk9Qijy-^a}(o>Qq$OPR{Wj7{C-Wkq(Sht!=jfyTe~W=a&iTO6}SNHW@Jy!&neB# zD`w^7bY2i3sN)l((+k31%U=|Ii<#JX7>-*2N63c2pFYeaD@P? z;03b$FX$);@j631qoxlwpYxU@dz*oU)qn%&Yeo%DMjj?6&J1>vN5nSY3S;w<&+j@ z=%-nx8d;hqCYf0#Tbi0AnOPX7B$=687$>C|8<-@Tr?6}CPbji8l$*ZJ`kKYA{|WAT zyV^Thn3#lt>7`gdBQ-IlSRWYgX*rq6CF}t^IlpLI_kZZjRB~t3@m#eM)sy8-nk8YT=0Hvy=H1VCxtS;{E);D3!fc(n cMsvlcYe#;lfb_EfF^IDIzxBo;mE?B;0P)5qbpQYW diff --git a/bats/helper/testdata/20200218/.dolt/noms/nl77suguv7ont1cmeccqdh2u9vc1vpis b/bats/helper/testdata/20200218/.dolt/noms/nl77suguv7ont1cmeccqdh2u9vc1vpis deleted file mode 100644 index cdaf36c85c13c2414320de1142daffdd7cbef6de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1112 zcmbV~TSyd97{|{!GqbxRF6*XZfrO%lMzyQ$wLmmo#PXp?io%%A&Yr#K?94WEwzYZ* zrBo;pUj!v6jLI$|m4$^q_!9NhOBZ^I9#RNQ2tp{ZGi%=^L>e@h-zqrR8%fqwgX%b;Qq}=QXJMJMh)0fX zWgjJaE=7<{)u^PV6~&UmI!+oE0PG1vVg;47sFdmekXLb%Ae8FhD2_n@L{w=rXA^2v z6CL(gNh>RwS%C@*orgH~>C4YSZ8u<(-8P6h*k!A`G$C~NcLAP5 zrJnZ+rUY$C(`X}>mE)-idV)TGP0))tmQ!?CgB^DTp4=2Lg78Z5aW7r-1NE4ZYSsP)9s#G6{_)$X=a-cO;%@e2z_ z?z#W&$Ob=5i~cZVv(QYXPOS+~}XvvDetcQrhVcA;uz4PZ&+p(|T zQq%t0;*pnu#|LeqAXLOxblNCJRvs(E7xLRS$8jBAaK8R8bZ5QOYeu!+1TJ0$7W%d_ z7L(V$iMHhrTGn+#DeW17i^CScp~~H^sFF6~uIOHZeLi;}>Z|tF1pIQ471bEKNjMM; z_oz3uUncK|r Lh8c_+Ic89i6^)W6>6B4TDyq6{s9J@p3f(NFwGso{A8DrnU%=N%Yat4(Lemm0 z=~9LoDuo;5Y=s(laF8h#s>71y<=xDXRi!H<1?tcxD(09nVP2t0R8$K^I85gyT9%C* zElO%JFRjyQQIk5PU9xV-$^^wHP^V|NeNxhKrApN-yj7x#RHo7{LsBy4)s><|WhJX> z1-_b~FjHO3Nd>02({fH0b2Ovks=drA9?h=lvM|Aqc-4YVCuJprQ`;E4Bws2hlqngA zV`yroB;pu9^;QBR4?tk58(K*;!Ra*dYoZ%9ra)Y{!jLo2bSfzIV*uaWhGonJm~k14R0UVG92#@U$;1e;ZVlW!ckF`F`ufh1@2EtLX zWggKlPh+g|m^V(2kUARhcX#75s!pHCj+4FPDDup>lluML)4OmlKh5(l-04Iyj8=NR zfJ}`;;f+@tu2^0c9NTMJ0t^|pEeJ*Dp~hTsMN~n4n^e3!!Mouk31EOw7)S^_u;6KE z^4!l6_sXW(Ske?JWTYBNrIgQGi%eq$-HMP))|0R>l4>?toJ5#YSOFX}s+cq_3y1WcGx>8w`qrPUM7a5y67nRlWnPtC`~r>}w~4n8#+rd$t~|zQSD*oEbH5 zBs1xxrm6yO=J&_W{V{-eeKS`|OY_ZWS=FCS+QiPphJC zJ9S`dAQWCZ_|&r>Ce{p(*YAIRHkJJYEwIY-bMpxLFZ1Ywn}JJ*@$B1HWFf5`UDYDpp|0|R?OVo_>dNihcl18Z4gPH8H8LvT)F z!QD2sI~-CUJuc5X^f#81hk;S={;j(%ADr137@0J5_0w`ni!=0%lPwKQl9COK%+pMb z3{sPmEltgm&61MM&CF5~lTA(7HTfqL*%``BUuS*IV%Pr!cfDQhoh(dddiI+n6F7NN z@^eb!Qs>k>vBxv{<{Rk)=l->w=}tD004xnXh;A6 diff --git a/bats/helper/testdata/20200218/.dolt/noms/psvnhn9ct110ood7vckomvoeqjdfurga b/bats/helper/testdata/20200218/.dolt/noms/psvnhn9ct110ood7vckomvoeqjdfurga deleted file mode 100644 index 3cd420b666e1a3c77439c1701e82c46c5c85c955..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 211 zcmbQu_+b_s12dC`u6|lhX>o>rnvr2rVxpmWilwP(YLbCbilKpJl97p_k%5`1siCPQ zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2Aa0#=!s2UL=mn4_Oul$uzQibFAv!n!uTg1Z%JRpJvEAYgIv e{Ckzz$@=$FtY5qX3Nb>(XaC=N1((%jJ8GR531#n{};$jHdd%p%pqB+0;( zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!rr*jVjAzm z$ITfV<&LH-l%4!*kLFGm7A8TET3#KI+{EIN)S@^o1_lvUttpv#Ku%s_j(&1cYGO$$ z`vOlVpXcU9do@JXE}pAaqI$BtNt1=K-cwJq>VMOuwaYh`FhIao^};n#@+)4jDNn6f T3KU|5iXZ>K^~NEU@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXtEG^aTArMrQ<|GsrpquTGY_abFEK|yxhOTUB$a)Er<2cf^P;^PB5N1VRVz_F zS>B|{!gxkJaO&K;4a&nM&@AnjA-+*qR@+ zurdkC>Qv+=7MG+Ju{W-?n8y3?adXB-xuYoyWhejIqq&oXg-JwKOCc|{JUKt7G&iqI zmtjg~9#C~&Vvc@tQEFmID*FOYC!go$MSC?w)-Il_R-$^cyh)RV@!$%^_tvit&El}~ k^<{v734h;(uUzlfyx2%Ty$vYD2o>M_f9s7yD#`Bx00~V+kN^Mx diff --git a/bats/helper/testdata/20200218/.dolt/noms/ss6lrhevqfh9ekcn0kncn7basasco8ae b/bats/helper/testdata/20200218/.dolt/noms/ss6lrhevqfh9ekcn0kncn7basasco8ae deleted file mode 100644 index acb6c64bfdb2b3becb6a5bacd0565e8e609e9367..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQ%_zmlEXg?0ASu-%&Ct@s$Rg1o#VF0#%qZ2u)F{z{ zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!rr*jVjAzm z$ITfV<&LH-l%4!*kLFGm7A8TET3#KI+{EIN)S@^o1_lvUttpv#Ku%s_j(&1cYGO$$ z`vOlVpXcU9do@JXE}pAaqI$BtNt1Ul|<>b9Lp8*24PJel&{=XCNuM81Y UNuUrTRQ&k=tv3#-B)@C3i+mj-yU&&5v1FnFK*?a|!H z!onmXtEG^aTArMrQ<|GsrpquTGY_abFEK|yxhOTUB$a)Er<2cf^P;^PB5N1VRVz_F zS>B|{!pPG0SHqE2*~^1bC7J;OuGQ=|GB^43aN(h4&3Ax8j8O3}|F_;aq>}tD007Ka BTUY=9 diff --git a/bats/helper/testdata/20200218/.dolt/noms/uieip5gmq2l1crulfhaaeetjnp7qrss3 b/bats/helper/testdata/20200218/.dolt/noms/uieip5gmq2l1crulfhaaeetjnp7qrss3 deleted file mode 100644 index d4006465f8cd6a9ec3a4b83df8418b70b129bea7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcG!pu0uEY&hO&A`yW%+dnLNKG|Ov#>NuOf^YPOf+HF z(#)vM@0T7p0~Z>u01UrWETZ=jWy6WG0ue2khkhqHW#( zp)*s-ol%qHs1sZBV-{8>L6BNror>JV;*!)N_QsVK(|8{~ZqC>!cQj?8?Brj2Gopl zH)*mkuHZh}CH#2S>|Gfm+6)kIt?SeG#s$X?1tt~Ty$lp$go=OpzxBo;mE?B;0EcK^ A(EtDd diff --git a/bats/helper/testdata/20200218/.dolt/noms/vf9go77binpab3ueh4qjc7e17ms5mulj b/bats/helper/testdata/20200218/.dolt/noms/vf9go77binpab3ueh4qjc7e17ms5mulj deleted file mode 100644 index e03e6e6a4365d8b0ca287ef123eff8cb59a3e2cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQB`GP*G}Y9^%*4>x%*fQt+|tY>+0ru6BGJSs4M?+V z@=qwTGnAXY&ib0guKx+{db`>?S(uoFi&E2y^)pfvQ;PMI^YhYjGLuW#8&_IP<9+zJ zIb);T(UgUzPnI`nvM|mJb^YqRFxg@0#0iH diff --git a/bats/helper/testdata/20200218/.dolt/noms/vluaml01uh03jq2qmlvnq6lmm76k2gnb b/bats/helper/testdata/20200218/.dolt/noms/vluaml01uh03jq2qmlvnq6lmm76k2gnb deleted file mode 100644 index fd0d1a631d9e665e217e4d7feca25316f0542023..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 122 zcma#r!N$PEBv_Q1R;-_qnwV0opPN`*l3K*Rz|+a+xp~oE4Ux5r=c<*co-A+DWMO0y zVb!w8%mXUOOU%(vE=o--NsZEFFy54LF)L?+ZD&a53o?Wp^=$!qD4}wVN!C6nYl@_rA3;dfkBFSvWc;&Nt&f0 zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2W$HK@Y0#=!s2UL=mn4_Oul$uzQibL`5gWFEe-_h@$JHIiH0Rk55 fC^~=n7}}?NY;$KfP>2yKKKuXH8;4Yq-vs~wNIOa^ literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/0t63hbmjg0o2e0l2muvmpdt7clu931h9 b/bats/helper/testdata/20200225/.dolt/noms/0t63hbmjg0o2e0l2muvmpdt7clu931h9 new file mode 100644 index 0000000000000000000000000000000000000000..3ff3784b790f479b414e99cc95f3316c4576f31f GIT binary patch literal 192 zcmdnYcz}(8g-N(5HLX}bBQ-IlSU)*GFD)lCxrBXMECsNs(<{o*F$9%7A6r{Erq<)^5p!S(%if< zU4|){c|g^9i8=boMX8A;sqAy?N`GXly9Mr-J1Bp-|7?teg2Fr&#?+wtJ$*|y)V}t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+-z+o>rim6eONosPENt%IKnyHCdvWaCpak6o;nQ4+G zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2W$HK@Y0#=!s2UL=mn4_Oul$uzQibHX8uaco!{pLMUpB6_mK)~W% eGk-?#wwtB|bn<=z3Nb>(XaC=N`0OT literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/3oobbccq8prr93u72rui774p5bddobss b/bats/helper/testdata/20200225/.dolt/noms/3oobbccq8prr93u72rui774p5bddobss new file mode 100644 index 0000000000000000000000000000000000000000..40be204c8917992aba4ea72b146bf8eadcea1798 GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcG+|t0*)H2!J)I8bD(#X^-H6_Ku+&nQkDcK^~$SlQ} zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!agl>t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+-z+qr+Z-A z(jX0(<9jI7k~}DR#HFb0xDXkAlyRnV#}y-Si?Pkcx0^SUvv0P3dF)-L#xS0=P69nyi3drcL_21H`ZD=Su^l`4&}HMW3mP`ydS_wslN$ufKW)lD9>M~h9C3}H(XnJ zrbXuuP5j6;eNiz!-G!vUzs$;*H6VD+faVmO(G<0;7w^q$FLeX;aR>- z?M|%Uk)vYSw0w{8fH;CC;xJQyansM4#k`bvJX>nG(H`RDVwhhkQpd~rSk tK>+_6ihOsvExHT;ng>hSxz9a!M^4SHEQlJ~RRIv1-kE+s*J!Ps`3<_+*)jkC literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/4ae47cm21t7cuq7vluh2ugosmv3djfii b/bats/helper/testdata/20200225/.dolt/noms/4ae47cm21t7cuq7vluh2ugosmv3djfii new file mode 100644 index 0000000000000000000000000000000000000000..ea5a7a92d966fcdd64681b22df6bb1fdc77920b4 GIT binary patch literal 211 zcmbQu_+b_s12dC`u6|lhX>o?WVN!~Lk!50viHUKdsey4~vVmD*lCimYs!@`OX|j0| zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt b/bats/helper/testdata/20200225/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt similarity index 100% rename from bats/helper/testdata/20200113/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt rename to bats/helper/testdata/20200225/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt diff --git a/bats/helper/testdata/20200225/.dolt/noms/6bc0ms2gnjcepoup7ni9110khaljmu47 b/bats/helper/testdata/20200225/.dolt/noms/6bc0ms2gnjcepoup7ni9110khaljmu47 new file mode 100644 index 0000000000000000000000000000000000000000..093593458fc24a29c5c2fa10391e03c3fdb29585 GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGIN8J~)zHu^+04Q))zmo2%se&K)Y3TB)HFHG#K0hl zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!agl>t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+-z+1Kf{t47F7%oaIJr4Q3`Y9Bf~s#xqm<*MyU9g|66YyQb~Rn008-i BTQ2|r literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/77goep5rp0nmldp0pn8j66ria281d7tv b/bats/helper/testdata/20200225/.dolt/noms/77goep5rp0nmldp0pn8j66ria281d7tv new file mode 100644 index 0000000000000000000000000000000000000000..af8b68850d6e89710cfb629795f40c6f50ad15a8 GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGG}*u`HOVM7**G!9$SlRg+`_~%+0ei+IVs81%)s1; zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!agl>t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+-z+X>n>%e2Jjg0scAjIzRWvuoom2rRJ3s zb1*QlmL=wtrgHM6!|$vXvwz<)jv~F)(PZ;rnB-hmC=eNu($>tyn)Z zuOzi7FEK|yxhOTUB$a)RUFnZ(b+^F%atGxv_n(cCP*9l1!g%)eOdm;`U_LH`E$t>HrE4<) literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/8gnmhsv44p0qfgi21hvq6ql0hvv4r7tr b/bats/helper/testdata/20200225/.dolt/noms/8gnmhsv44p0qfgi21hvq6ql0hvv4r7tr new file mode 100644 index 0000000000000000000000000000000000000000..9efb8174ffe05b0fa0852046edd8dea9e36e7e6c GIT binary patch literal 211 zcmbQu_+b_s12dC`u6|lhX>o?WnYoc^qOpN#Qi_Q|ilI?bs)3nNs;PmYfmu>wnqiVT zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2W$HK@Y0#=!s2UL=mn4_Oul$uzQibL^~9EszJe;8W|GW1_DK)~XQ fXKglquw@jS_IU~;PzZ!UVD|s5Hx8*JzY72W+c-!$ literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/8q7v5097qicfnloaqc6roe05ef75428s b/bats/helper/testdata/20200225/.dolt/noms/8q7v5097qicfnloaqc6roe05ef75428s new file mode 100644 index 0000000000000000000000000000000000000000..50391cc33c01cc3294d1059ed9ddc556536dd7d3 GIT binary patch literal 1001 zcmbW0TSyd97{})v&&)Wo+s&&C7BfgFE)WbYLd@on z+LYt1c-_el{Mb3G_}RMYbX&=_vvBIEz?!%*Od!&=xWOL|eCz1`ytSdVr0-zm?nGD4 z4zPlASfEXGSTdmK1X+gEOd>d_6NQg{c@aOeyu7zc)Di;^Dihr+2QCX)du9Y1>G1$B zY2jEzHCVyANtHC2$Qx!pa5kCv;-V+)zI`7+5=kM2${g| zgAk@9GY@F%?JvKE-Ut?13!6c?F{o>r3AhTri9e(O9~0_or(6sI{r*CYpuxZde!hkk;o z7{{=%(BoCYF{9aACSy`T{Qe4`f+fXAFe&$y`72lXh=NI_BJoAGbNX6;?#0BKk&2#V zL)FTj6Q>Y_3#pF`Z!^KN;iZ#Q!Xe4zJNDh%R)4c6%C;WA@p8|D4yG`-6tU2r(ppOo zM6h8Jou9fC_h|OT^`CxKkDYJ#_D^gb&qoM4bBbLmiO)K3zlXU%{Y7*YhrNs_uf4% IkS2Hj1p)j;>;M1& literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/94tvddc0h23hi71m0ovp3emkdv8ko6uq b/bats/helper/testdata/20200225/.dolt/noms/94tvddc0h23hi71m0ovp3emkdv8ko6uq new file mode 100644 index 0000000000000000000000000000000000000000..f561da69472b2abf4bd57ba25bc287118c65e988 GIT binary patch literal 229 zcmX@k_@R`IfrUv!S3fPMv^YcGz|hph!ZI=0%)-bpCDkz1IN3DSz|!2*(jv{+GSSqW zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!v0}qxo*Co zc-(`p-nS-B)j$5)>!C6W3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zeU4q}k8E|f!2NOua86aTmv5=mb8(VuXm7mUj T1{7k1iXZ>K^~NEU+dgJS8#JBGtsu!qCXr)G#R#$TcudGB#(| z(#)vM@0T7p0~Z>u01UrWETZ=jWy6WG0uePmA2@6SsO- z0c&^b;#0xfr!i>A>9DXe34+w}>Qv+=7MG+Jv45CZuA46?9{1p@_pOOj^^d>ydZ^68 z!XzTARg;%mo}8aknw!UNo-gx@#ddjlV5t}HO0$Oidvz-cSXg;=r)1^<&B#m4(N8W) zO)N=epJP}0BU{}qaKGF^`OE!hV4AMIwP literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/9hrkb1viqhe9iplh2b623i4g358tcn16 b/bats/helper/testdata/20200225/.dolt/noms/9hrkb1viqhe9iplh2b623i4g358tcn16 new file mode 100644 index 0000000000000000000000000000000000000000..7e9117c1cde256c487c5f78d1af34e2561984f2a GIT binary patch literal 909 zcmbVLTSyd97@l)>c4pUR+6%gw5AH@TUclBh?}a7Vh7SuZYC;L)aW3uP?#wbXiv-m} z1Sv#Cg_cE>U0y;-=|Vz;f<%xgS>{X8g&xFMg=i5U+>R^8zWCDN!1+1<_kV}~`@d6o zgCc+v+6fzUlJ@6jND9b6_BmHJAP8dn$Kk0j?q9)=h%VKIt0O_b;&y<~s*c=rodUVHy| zPJepPIap`SYEAT>Sm9Mc6b_{?C>u_2ysGGihGfOiSy|^|NHaK9 z;$mH7m#he+f}*0yKqoE6shB7$l4`a({;_OULd>MFOpIFxQJ4Znbx1J;gPSEF1Xdd^ z0cSidINgLfAnPSb1Nh4zgzJ#>0^K9ucibgstc;*W3{L3eG*vYKl@>;)Fpmj!^0dhk zeATy0_}SzNE}b4~O0xG$@~vjGw`W7UOl2}9qt_(?dF@*%Vs?D}Z#{AXjye+Bb_Rs4 z1z@W)yC+Dq--4S5#VlYTv=Vk%t5Ho&Wre?rM}jCxVnwAW)gu31vAn9R zil>WhSG0P6e*f^kxtg(5$B{i_7kWtu9oR>@FDxQK_eGIzh#K9xI(l*XP2zJw>gr(f z*tu0E=*%HaFguOJW)U?7MSQ#_B15Ea*T+}73In0n`Qz@{%Tw*S9?u;Tq+A2|TZEVBz8jj(4_e|tLn|}evrcJk}T|f|}7>bPp@JZay`~jI0Kil~G`oo?jI_Yga fakJ&xr?wBxPx{`t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#D7tJajvJfMQS#2o$PqSVBaRQ5S`r9ZOO-2(T^9hAS^e>O%!L17*XBX_Hh(+~co oyH_t2He!H)lTTFEMJ4h&2DAOydmkvo2o*p6f9s7yD#`Bx08M3BJOBUy literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/cae69p9bv9qgk8gnmcetcrq6pb337bur b/bats/helper/testdata/20200225/.dolt/noms/cae69p9bv9qgk8gnmcetcrq6pb337bur new file mode 100644 index 0000000000000000000000000000000000000000..24d2337cfe2f23d633dbfee3a91c1a60f2a35f75 GIT binary patch literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQ$uh~rEZN*F$!C6W3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zeU4q}k8E|f!2NOuJKOojv*(Y6=FREqWq^RKD$65^(#z&Ft*tL* T2MRGl#gG5rdgG8v^1A>4Jnm3? literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/cvk1s81mdeof0rnedr8vmk4f3qh91r2a b/bats/helper/testdata/20200225/.dolt/noms/cvk1s81mdeof0rnedr8vmk4f3qh91r2a new file mode 100644 index 0000000000000000000000000000000000000000..7cb32a497a3559db1478340372e460d88760beec GIT binary patch literal 1287 zcmbW1ZEO@p7{_PkX5X4y@2*g(B$jHawx;E7uPyCKQZdz{VhtB+g0bl`w=eCcd%MT( z9ETr_F%g7lEluD+Bvk>43D8s`A!%Y1k}42QNJyGSzwnX>T66Y;6cUX%ceQXt{o-UN znP+F_*?s=M|ID}CPN`y}HfW^DGlUW-Xs(@2J3a@nBtPqDu5RdEE?m;fhuDm&xsFdg zVmXwpfKsHYF0u@x&_i`|T`GMoV<6FSsp@2Ho6iuBqToXl&F<9d`i+8`8-HT=f$JP z0fhNYklP;?b@l=Hl60^tboB!e##vUIoClhe$0rrI_dp(W7U05bajduJJv4V#;wVYk z2Ev}3^M#{7CC#2>X6n~MovVsxy01+oXZXq>3WY0!0Tf;eEBq27)iX>X^W#)*_|f(+ z)`i{ibEgyIpRYQ1;NKaR5iCOe2g3Wwl(>|T6mi_;z)6w2K3Ig0m>C>7m?<&;n>6Bs zAjnt%grF2+Tj1;W@X7TUQ>ercLd7Me20=Kde1tDbLEW{fs;5-Xbt&Xa!Z70?6d);0 zcF0z~z1SyZW9YT;%fq)}yLB z@?_EV-THqEAh(xS4=|^Qta#Wc!yrPEUcbE0)qLUU*-JN1uBffNoxSqegS$@T>#f;& zPk_~kfk!C(ClA?E;9(j+%DXAB?uOq}rIBiD|TuSWBCx80|`2 ziz&LH#ACXt35}uMUZ+yCZ+y*k$K;*O>sC#^y$d6>g!#yi4jM%Fql~0!TN)Meubg_Z z|JY=PduRLM3mZ@8K|@Uw=1`=#R&LssCO$PhVeb80vm05~fBEM6???AWznOjEN*%^% z>BCRdI!12c_So7C_OK&hcn-0nnrE=nAsp;C z9J&7LbML-+n3)1C!e(Q*=<}jkCN}->$Iok;eqqA^o1&~Uufb*(PnVyAa+ACvtUWf$ l@%^6m@vZpuW^(8)<`JY$;V+`Qm>&QD literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/fi3vd71upeqgs7ffmc198536l2ah2nem b/bats/helper/testdata/20200225/.dolt/noms/fi3vd71upeqgs7ffmc198536l2ah2nem new file mode 100644 index 0000000000000000000000000000000000000000..36571d4ea96bdbad730a30537d30f54d65aa61a0 GIT binary patch literal 284 zcmeyu_@R`Ift5)^S3fPMv^YcG+#<=+DACZ+z%!Zg*uz}PsA zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!agl>t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#EotX554YI$;gPHAo)yLrCMFBaS7<$5pu6x4`{!2jwsKpN)}FP?*QU7&P7HM!}zn30H%r<}yIQ8%F;ZJ6d8o YI6m#Tu@or82o?YGf9s7yD#`Bx0HR4|rvLx| literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/fjfk34olm8dg9f3l7u7sqk259allkpbq b/bats/helper/testdata/20200225/.dolt/noms/fjfk34olm8dg9f3l7u7sqk259allkpbq new file mode 100644 index 0000000000000000000000000000000000000000..19ee3dcab6b367452aae224780970c936067c001 GIT binary patch literal 249 zcmX@k_@R`IfrUv!S3fPMv^YcGI3?NA+&Il5$;`;qC^;=DF*Vi9(#Xuvz%t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#D7tJajvJfMQS#2o$PqSVBaRQ5S`r9ZOO-2(T^9hAS^e>O%!L17*XW4BP2Z28oF oWwFx_%@`oyF#o z@=qwTGnAXY&ib0guKx+{db`>?S(uoFi&E2y^)pfvQ;PMI^YhYjGLuW#Kg=xG%@-7p zd+^o!*2Jm$$6tFrRAyme5(KH`)e*@}EG|hciqm3X5MkAtl9>nO$E|-EAYf}_rUzTrf=KSWSECbw SLX1%H2pmzI;6T*CfgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#E=td2--VsS}oQJfY7g9xkEl*~LJCoeHaKe;G1u_Tp!j$P@GY<0K5{c;E8FZZ8~ zkx)>W$HG`taQ4UK+LizH^gjtPKtTS5ZU5bR-9*pVc~9B{6k>#mxBcIG1XlR;ZV3=rNY+=f- z$v>gU&QNapI_ql|yZ$G*>+NdqWMN_wE=o-+*3U>yOexk+&d*EB$xJR`|1h&$H(yXZ z?!i~@TN9`1AAjxjP??2=Nf4x#S4Si_vA86)C{BxkL4;LnN@gCAlb4vIpInrhSdz*< z$FB58wz^y3ez}A4m;2AgNGK@GV___vl+bzfjf~GLnYa235U^FrgH2T}W^vWyBzaz- S5F=Fl`2Vdp4yh!+3jhFT;!SV> literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/gi9e8nmhav58f4vukca2vc2cd87u09af b/bats/helper/testdata/20200225/.dolt/noms/gi9e8nmhav58f4vukca2vc2cd87u09af new file mode 100644 index 0000000000000000000000000000000000000000..38876299d46aa466bfd4c60707bb17dc712342c4 GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQDaka+Ako}1)iBk}!qU>%#LytgIMFi2*fPZ+Ing|s zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!agl>t54kO zT?MS&t&2|uZ=c4XA*aK_$|ML<%d1n7n^;_uTEzZgX1Q*@pm^Mauim#NPSrpD+Uub* z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+-z+!C6W3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zeU4q}k8E|f!2NOu^F!k2zm;!$R!L5N%m4vf>!(FG1-r{su}nP) UG>d@|Dt`R`)*FXZlHUaY0Hvx=w*UYD literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/h463bia4dpvciqkm76vfj5qr4ed0l6k1 b/bats/helper/testdata/20200225/.dolt/noms/h463bia4dpvciqkm76vfj5qr4ed0l6k1 new file mode 100644 index 0000000000000000000000000000000000000000..b6848734a5f8366be99b0ac6018c9155bb4b4711 GIT binary patch literal 211 zcmbQu_+b_s12dC`u6|lhX>o?Wv9YFcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR28ZYIajP@kkY{gcD(-gWPttB0bO zEQu_kW=2KOLw}@|kr`4+LM4G_h*CzOFFt6s*2vD zxcrQ)x+KBnZ^RotB8Q8NkJqTo$t3lRpZAD@L}-owP*yS_LK5{lzbh6*A_&H(KvIY4 zP{|mCKx;rL;H>#5dagtmP@jwADzFtp2xB4f1tLqPZ};$Ft&Wqts*7{GWJyv187D>| z5srp&vsBa6!uh`H5S63X?= zEXWi{hp6)q(n};jdzJ(R^Tq#kQf2;EmpxBP#UZZ%Q_s}xAGiob35!dJLl$E zdkJ6c795OQD6vrmhHG-EEweqmYivhvw7#OK_hJhU;aVgl#oE9#oMJ_-6ucf*r9#KM ztLr*@{lw)9_dnJ4gs}X~LY#ocSggMAw2x6#UZx@)L5pNuS2rM3pF5s(bhAzCZrY hr}{rMKdNf}G5viq6s1uPj!x`46z%@npTo``{tFTiINksN literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/jqt5s1qs2g998ugg538u8l7c706it2cb b/bats/helper/testdata/20200225/.dolt/noms/jqt5s1qs2g998ugg538u8l7c706it2cb new file mode 100644 index 0000000000000000000000000000000000000000..a950ed902cb0c39088c911047e0f051c1769a3a2 GIT binary patch literal 1153 zcmbW0YiJZ#6vywq^Vq#%x7#&_rXV(w*d}7#M>ol?EkVeuMUk{Iw6uZA-I=@DA@f*g z?k47g;FoAxh>;dlqO>8QRk77lDnclIS|uL>VjzSPB={*JN!89k|Rn z%sFS~{Qm#>Sscb?oob$%q=hg71FCHlP0N*lfWxhpYHL($wqf}JIl`YPs%^QgX#Xio9CA+^n#{0!2Z~W{Oob47orYV!AQ_Vck`D!W28F6#4)Z`*ce~0-qsT z#H0un`UFOLApk%UYJ=Vw-OAZG5e6*AVU}4nBJ4I;g=+H>t~rSqM*qES?U2^DThzt7jnhVsrJKo8EJa9FvKf85t&i!%EritDEE>ww3o^mhf^gMnazR%rb zz7AW$(RH!c6h>Te%f%s}z`Ck`zrTzS;uWhGY`Hw! z_yxL&Lz-veeiuv9_WUZd zQZPQM07oH}cR%mg4G>av@qc5eXp8Rl9NiZ84ZXIvbbJfn$X`3$Sh}<*GMGr0?##;; zI*MIq;PRLZ1XTNGEN2wme2k$_D zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!v0}qxo*Co zc-(`p-nS-B)j$5)>!C6W3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zeU4q}k8E|f!2NOu!o%>Ja?3=pvOarw)GRRTK?2CY9O T0u*9|iXZ>K^~NEU;@qbU8Kumkwx_o`H;O7k|iaT+M|XDc99<1&KkzP_|kBO^XHuJ`#9(K{ZIHJ z$3Qo9G7jiQ&W9{S3MSY&vMe7k47222>ec6xuX|e3X||L>LTRaB83~odG`+RZ=jro! z`Iocdbb9-i}kncS$^UOQf_zL8oHKGaJ%w;ej1ZhH=N z=7U^Ij;RSOnQD|Tv&uKc4tG2fwcl@Uk5~`t-B&jVxd-M0w$md4UN+*%gl@5dxI>o> zMOC)VFK`aJA<2er5ff`Vu|&<1+ObI_BPzAGp*Brdkd6~-4#BN9aXbR}`9HiSjX$>fP5h5T^2_ejc%zt3jm>^z3 zLxNo~;zUv+l4%$OaPwd+3LEC&h|JIa>^;`lUwHlXnT9aCxASIbEHo;xtoOuUcG+aI zk?|QMpr~mvBCKotzj-VTxi%o^C=4l!0}yMoZ_gk$V564@J`va<6cle!lObFDmZ{c5X>Yw2Enole>9%7Vt%DY zjRb3}aj+&@Q&knHjH*=DDQX~Cx4t@BEAu|b8FO=>_(E#qNbpIzrD5HZ<0lb>dDKUi zKc-^E^3zU6Ku^!6j|<+;^!(N@+o!6y9HbIH zja=QgduTF6bYDpp|0|R?OVo_>dNihcl18Z4gPH8H8LvT)F z!QD2sI~-CUJuc5X^f#81hk;S={;j(%ADr137@0J5_0w`ni!<~Mjm(phEG#W7EX*uS z5>3*~Op;7fEK*X8EfXy)Qj$#BHTfqL*%``BUuS*IV%Pr!cfDQhoh(cl9yP}#6F7NN z@^eb!Q;!VxR{Y?19)Dh~<&pj%;~q?fxeJq-o4~mjoZ2``31&vv2Lx|FtnIfqGbg Q7zAeg-+JSaO7gn^05Gs;LI3~& literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/psdvh71n9e069pl01nkcg5aijos7k891 b/bats/helper/testdata/20200225/.dolt/noms/psdvh71n9e069pl01nkcg5aijos7k891 new file mode 100644 index 0000000000000000000000000000000000000000..76a7157d8be4c73aa13c94a5d2546485cc063e50 GIT binary patch literal 700 zcmY*VT}V_x7`-!lf7iS259_9oy5cV4g1ZV~5F(W+SP4qzgDhQU@14!d-k;^ptP=GQ zMTiktQKA)s_Ns+K5J5x{2tg!BWI>QYPl5)am=D@W^w7u0H}G-JneUt>xlIu}T-!FO zkGC;JiVVcF2BJvh4NP>Xb~`3DkrfBgW&zvCv|uoYC^;^u(R3aaa2YtVJd8bJx(@WU zq?>sM*%>UV zEKB~T*pQ+cu0=H?r+KbRfk;u#!bF6UA_!$!$b0Sx@e_TBnbAC)m&Az51O!2q6#qG) zDtn5V2a@huCEFo_66kbv*T6=H5WX!2*;>tGgJb3c?>gCmU4dCOa!W6R&{s|srz*2~?@t^qg=+oKn9ScTw WaI^XVaDd`CerEsK>YIeV(fbEs=h=Dy literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/rd6kqkaclph8l93js1f2h00pna5uuqif b/bats/helper/testdata/20200225/.dolt/noms/rd6kqkaclph8l93js1f2h00pna5uuqif new file mode 100644 index 0000000000000000000000000000000000000000..c9d71e586695132a65c8a4324f323255c4ea235e GIT binary patch literal 126 zcma$0;LOIr#3WdhnpUizk(!uNte=}$T#{PEKF6-~N4C0K;C{J-@|XM1#z-hA%wu6> z5&^5s%mXUPOU%(vE=o--No5byWq7C=$fi{M&iS0JwK4+)_*oYg?66&KE4(^UtrRH4 Q2o;a|zxBo;mE?B;0BcAnd;kCd literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/refbbl8digdrdb0mhrfk6a0mkuhb0ran b/bats/helper/testdata/20200225/.dolt/noms/refbbl8digdrdb0mhrfk6a0mkuhb0ran new file mode 100644 index 0000000000000000000000000000000000000000..fdb7428acc4008a261ffef34b7d3bf8b3c9887f1 GIT binary patch literal 747 zcmZuuT}V_x6rP#AKYQ0*cUL!4O4~?D7u`()qY}x~jWWtmf?)ABd+)4XcJIB*oms7* zC+Wv}(4e-$=tZKUqCYI?rHsG`3qy#ohx8=^K_ap2A!{BAdg$W}XPEOH&iTHXayKec zi*1?)a|tG4SaCz?o{kxo1f5U~6*ucT(Zkf{#a_ee2|ISbNK9;GkUxnT-9ex?6iwkY zDS+Fj`iMgf+d{7T=qAC!CPAK^oD}XNlu?BlCePT+2422>@#9pqFh_}_vS7(2|LM`e z#i4|p#SXC;bpt4Wx!hl82UmB`F162`yAYe0-!r$N;UNe{Lt-D!RD8I4t@3v#Qw^Wezs@(msQ# ze1E3eDK(oG(uSoA>pL4=4EMO%(JV2nlr1X3Rq^090r|_~K!r8667Rq!MUoeI;fDZ1 zQ1Sb=gu6I@H|HZ?6%fRFH&+I0${`Ty@WBF@0SLKpQj-_I-#FGjR(9>p@U9MV-|_45 zkMS9+3a(WCiLI4hgcQB4Dq(9>Zl0fBday2Bw49r}Uov70VpIrx_c5nlYk2qb8l#@mtdX7xZG66(3qS*G`6?<)|0Gw_QdF`&c}IBT~RBD zC|F*5#Ke>l=fD3a2q+{*&U3ejW8q9pa|mWczS5LiPH&7Kcv>;OZhGi-qBI=7D!`e| zBXxhr0FGtfr_!HlYdOC{0MJ^V2mT%Zxq9~E*Vg?Llau02UPJtF2=9K4y?gU&QNapI_ql|yZ$G*>+NdqWMN_wE=o-+*3U>yOexk+&d*EB$xJR`pBA~*CvNqw z0@m)<#ixR|Ph-%K(_vv{5(KH`)v3r$EG|hcV*fC+TsL1(Jnq3)?^_e6>K}jY^-!6G zg-JwKOCc|{JUKt7G&iqImtjg~9#C~&Vvc@tQEFmID*GI}(jVFCZh`yd4$5EdKN};V zpfHbxkt6o_c6r0hiqqc?Ent9vYxXYJk4^K`|H^&++D@PlBUJp$|E)I;sU*J(001m+ BUHkw5 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/t9virrnc5olckgn23ok6cnak68ld8a29 b/bats/helper/testdata/20200225/.dolt/noms/t9virrnc5olckgn23ok6cnak68ld8a29 new file mode 100644 index 0000000000000000000000000000000000000000..3105a1fa317d7588b665942abcf6fa0017165710 GIT binary patch literal 1304 zcmbW0Uu+ab9LHzocK2>Cce&oR6--RKrWUQz-oN7YFhNPV8nlAi`b6zIw>x{c>F!S1 zoh$HQf+T<#t3DV>74boY1cOG6M(cwSqdu5R&=$i(V^HItmV}(q5{OEj+gi9reQ`3s z&HQ$LGn3!v`}@tqGZH`v)C5p?aBF{I+fbp$*0~SS=y2Ke6h5)yl5y&pjJkUii%bwp z8I0aBs1!_ACaywslPM-!uV7u5Lu(yf(Wq@l*9=mZAGGNNQFxqUm=@_tK-MBZT-dzj zfmTm=blC7f^!5c8eE-FU(n8=#IXtA5iH)~lhG9^nR>gKa5g<8Qa5SnDy`RG7VJXIU zRE;_wbFt|#9s%WeYe#&IfMPdx)b3H)o^gUg4rQuSu`FpEyV&+50HUU+a)+tZP{+pr z6vj+PM-sosbV`DQZGK9pnhL`$0ftKuMB(~S{W8-rs2nTEFDt{`+sZxEIw}MZ{Petq z89|8(Gy3deubRrIQYto8%|wz#oDwUeaBn8xo4+%c$!|abZ>NO>Ms_oS!FQVE3G8~} znsKKS&G z?)fgL9N8DS|Gp2t>;6zmL=bB7KQQe1Fjbcr!IOJW&Bg!7SnmtUZ0#p=>8szS)PJYl zz`BnAAFx+5^a=Xp>cFnC66N?c#a3iOTsFs(Bf2lo-=ZKX0wO$dfDn{p(Z{dzjdlv0 zQ96YXs_**)7QPJ6O$lfCCDdZ7UQ}I58I*h~TwsI(xTpnByqVm8cxeC4d%t-t68oh0 zmEVnZ^Rg&*mY2aba`B%JauQSg1HfgaMe(Wx`MfB> zF6mf!-=8nR+KUnhpxe5WhE?&($#kxdWOG_p)ACr$X_<5;jg734%@>O#m(nxAuGn+# zrgYokH}3knZ+hvmdwZr29ug3W^V;!}WrB4tX=9HOH+W=IyI=TpCa)_$~Y`qJ!dY4?@I WANhHa8z0j1OYfdLeT#PS!M^}@+oBNw literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/u025c384nohd013tjaeq6c1vn6cj1v9r b/bats/helper/testdata/20200225/.dolt/noms/u025c384nohd013tjaeq6c1vn6cj1v9r new file mode 100644 index 0000000000000000000000000000000000000000..ffbf6eeb6a473406f09d89da6e973afc135b1b74 GIT binary patch literal 794 zcmZuvZAcVB7@nEi*}c`f?#`}KO5MsMJK~<0~Pe6hj(}f-sgRJpJ(Qsf2Atd zyS8m{pJY=`R6mr*Ou~sQnUonwt20e%YRnbIF3aiEJhxjTj;R@LCTBaEfvHWb3<`A+ z&eq^SG?^l4nh)2%+(A8NxeoGGCznbNu_?-1D>zyUWt^$pvPC9#Hhg+y`0K&stQ@1B z&LeYAhHhLw{P|d`k|iE>IP(Ljd^*)#=|<+Yk4=AZ*E(rKgC=BIjII5_5&3Jy{I$;Y`jM(}F!)ma>FoE@ zxDMkUvBc6ri|Jy2uDdBco0ig+V@eB~SNb^V^z&U=YB?zvtC2a4krfgO6*U4KRwQK6 zL2QQP00_XhVT7O>3f5{Zg1JHEAL%fZ2We%vxaHD? zUd|7_s=hzE^QYD3#NbTXpIBZNKu9$kVy&*hl)8zL$y=pb!E|o?=G?;reKBid%2Qw= z3Ks}kcqWcSe2k-pI6(IXr=H%1Lo$%iY~c*6>Y~JCRYGnmV;NlO+cvnl{rcT3K6>Ed zv*tT}pu8j@VH7D&?6e8v)cf!INfL?{$M-n2`}a>$YTX6jq*YhCn{pe2*J}2;@AqEK zN;p_~LKsRthh(Y@j}lImv#WE{=_QR#4@(}EjvRa5TBvE~Bv^Z}|HI!AK;X;#veB`g rwrX*O0HAV_FaJAw*?|51L;d+hiQV{zs3CC#aQNro>&Ior$1T4A$Ao?WQL?Ftp}DDXl97>_xq(GeQfi`cl5t|Pk#R~&s-d9; zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2+PM literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200225/.dolt/noms/vfm8fpknt3arl9rn73mh1nn0sk46olmo b/bats/helper/testdata/20200225/.dolt/noms/vfm8fpknt3arl9rn73mh1nn0sk46olmo new file mode 100644 index 0000000000000000000000000000000000000000..c2220676c1758c63d0c4b203183274e9896cca89 GIT binary patch literal 279 zcmZ?y;LOIr$fTjGpO#ZvoS~m)W@uoXVv=T@XqudyXl|KeZkc3|YG|CAWNw^jW?{mv z$v>gU&QNapI_ql|yZ$G*>+NdqWMO)&Bc)jRp@NN(iCy{+bKwfLIR}1C`uw}V+14>5 z&ifx56FUnt@s=>Ms~`5z%! Date: Tue, 25 Feb 2020 17:56:21 -0800 Subject: [PATCH 14/19] repo fmt --- .../doltcore/schema/encoding/schema_marshaling_test.go | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go index eb59231045e..731099be718 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go @@ -175,7 +175,6 @@ func TestTypeInfoMarshalling(t *testing.T) { } } - func validateUnmarshaledNomsValue(ctx context.Context, nbf *types.NomsBinFormat, schemaVal types.Value) (schema.Schema, error) { var sd testSchemaData err := marshal.Unmarshal(ctx, nbf, schemaVal, &sd) @@ -244,4 +243,4 @@ func (tsd testSchemaData) decodeSchema() (schema.Schema, error) { } return schema.SchemaFromCols(colColl), nil -} \ No newline at end of file +} From a269f4900243c9c01470b6ffd31ed1c6cda4e008 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Tue, 25 Feb 2020 18:14:41 -0800 Subject: [PATCH 15/19] added comments and updated readme --- bats/compatibility/README.md | 6 +++--- bats/compatibility/runner.sh | 4 ++-- go/libraries/doltcore/schema/encoding/schema_marshaling.go | 7 +++++++ .../doltcore/schema/encoding/schema_marshaling_test.go | 6 +++--- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/bats/compatibility/README.md b/bats/compatibility/README.md index 492ac7dc89c..57949114f81 100644 --- a/bats/compatibility/README.md +++ b/bats/compatibility/README.md @@ -17,7 +17,7 @@ and the repositories created with those versions. The BATS tests used to verify compatibility are inherently fragile. Our primary integration tests in `/dolt/bats/` setup and tear down their environment for each test. -Because these the compatibility tests rely on creating a repo with one version of Dolt and running BATS tests with a -different version, we cannot isolate their environment without building twice per test. -The initial version of these tests does all data mutating in the `setup_repo.sh` script, and limits state modifications +Because the tests rely on creating a repo with one version of Dolt and running BATS tests with a different version, +we cannot isolate their environment without building Dolt twice per test. +The initial version of these tests does all write operations in the `setup_repo.sh` script, and limits state modifications within the BATS test to `dolt checkout` branch changes. Take care when editing the BATS tests to follow this pattern. \ No newline at end of file diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh index 0ea9873557e..e9dfdbef2c9 100755 --- a/bats/compatibility/runner.sh +++ b/bats/compatibility/runner.sh @@ -33,8 +33,8 @@ function run_bats_tests() { # copy all the test files to take them out of source control -# when we checkout different releases in compatilibility.sh -# we need the test files to remain +# when we checkout different Dolt releases we don't want to +# delete our environment test_env="env_test" rm -r $test_env mkdir $test_env diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling.go b/go/libraries/doltcore/schema/encoding/schema_marshaling.go index 572cdcb4fc1..b31cfbb48c7 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling.go @@ -25,6 +25,13 @@ import ( "github.com/liquidata-inc/dolt/go/store/types" ) +// Correct Marshalling & Unmarshalling is essential to compatibility across Dolt versions +// any changes to the fields of Schema or other persisted objects must be append only, no +// fields can ever be removed without break compatibility. +// +// the marshalling annotations of new fields must have the "omitempty" option to allow newer +// versions of Dolt to read objects serialized by older Dolt versions where the field did not +// yet exists. However, all fields must always be written. type encodedColumn struct { Tag uint64 `noms:"tag" json:"tag"` diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go index 731099be718..22b8deca9e9 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go @@ -186,14 +186,14 @@ func validateUnmarshaledNomsValue(ctx context.Context, nbf *types.NomsBinFormat, return sd.decodeSchema() } -// testEncodedColumn is a mirror type that helps ensure compatibility between Dolt versions +// testEncodedColumn is a mirror type of encodedColumn that helps ensure compatibility between Dolt versions +// fields in this test struct should be added WITHOUT the "omitempty" annotation in order to guarentee that +// all fields are being always being written when encodedColumn is serialized. type testEncodedColumn struct { Tag uint64 `noms:"tag" json:"tag"` - // Name is the name of the field Name string `noms:"name" json:"name"` - // Kind is the type of the field. See types/noms_kind.go in the liquidata fork for valid values Kind string `noms:"kind" json:"kind"` IsPartOfPK bool `noms:"is_part_of_pk" json:"is_part_of_pk"` From 28c62e3675d6495347740b22eb4d1a8b91726d72 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Tue, 25 Feb 2020 18:29:59 -0800 Subject: [PATCH 16/19] adding back testdata/20200113 --- .../testdata/20200113/.dolt/config.json | 1 + .../noms/09hv7tllti9b3hfi7u5m3e7lpbne390a | Bin 0 -> 159 bytes .../noms/0kl39j0i7gljemj93loojdhdbsj9lb36 | Bin 0 -> 284 bytes .../noms/1nrr0bod1960bccqc6c2med68hod5gc7 | Bin 0 -> 330 bytes .../noms/1rnurg4no9s6s23mdq8vvfmj0cik47db | Bin 0 -> 211 bytes .../noms/3dsltc9vis2m6o89bv0dh482pfme30ss | Bin 0 -> 262 bytes .../noms/4bujnjuatdli0klda7ucot0tl836jujt | Bin 0 -> 57 bytes .../noms/5im08tb1mu140r7kvtrd04u8ub5qk607 | Bin 0 -> 832 bytes .../noms/6739m2utlhl1k98f4o2fqmgtm12ino4t | Bin 0 -> 211 bytes .../noms/6oc2i2n9ln25n8go78dalvo3e9er9mg3 | Bin 0 -> 122 bytes .../noms/7er6962c841ghn8j0a357ujde9daq3mu | Bin 0 -> 716 bytes .../noms/7vu480853r3b0hitt89l7gc3r854fb53 | Bin 0 -> 262 bytes .../noms/89knkh4sejb7tf05gqq01osftlbsmdq1 | Bin 0 -> 1665 bytes .../noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd | Bin 0 -> 262 bytes .../noms/9ibrf56gr6gsgr7cpnda4au9o0vd0412 | Bin 0 -> 650 bytes bats/helper/testdata/20200113/.dolt/noms/LOCK | 0 .../noms/a8hqijvam2c6r9qvbffsdj5r55bis0mn | Bin 0 -> 668 bytes .../noms/a9307merr53dd71vj459m7qo6rk435na | Bin 0 -> 262 bytes .../noms/ag7kv5tuc4jvovmas7r5kel32dd94g86 | Bin 0 -> 262 bytes .../noms/c8a3b64elue3121ng0rgeagcnf48fbat | Bin 0 -> 229 bytes .../noms/c8dirve58o6npl3aufbupn3c2pt55el4 | Bin 0 -> 1069 bytes .../noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j | Bin 0 -> 262 bytes .../noms/csopsqdj2urggh85gbsfth4c9lf4r8vb | Bin 0 -> 262 bytes .../noms/di7sdosugcarnn353e8ldbnlts9v42s5 | Bin 0 -> 192 bytes .../noms/eiit9a47igil0id02vhgpq4g72ga3dha | Bin 0 -> 229 bytes .../noms/es7vlqed0665gq9es3ns2uqeh75bkerc | Bin 0 -> 881 bytes .../noms/fkes7bk2bl0p9cvfgk3dd7uf6p4cqcm1 | Bin 0 -> 229 bytes .../noms/frc0ef452fhh97o534e7lol2b427lk56 | Bin 0 -> 262 bytes .../noms/g2slg3mhtfb5m2tk00t8mor5lkboqj2m | Bin 0 -> 262 bytes .../noms/glc2mu652o0pt893a79j30tc6kgvk453 | Bin 0 -> 211 bytes .../noms/hgsmoadjsib12ml6e05or4q5urv9lt7l | Bin 0 -> 1081 bytes .../noms/ie2tcnurro57vl8urvucbjdrmmf9bo0h | Bin 0 -> 249 bytes .../noms/iellg8am40vu2tf61hbe7i0anhm76gtv | Bin 0 -> 279 bytes .../noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr | Bin 0 -> 262 bytes .../noms/ju51cbttj99itbsbk2svu7sij2tu4rhl | Bin 0 -> 1554 bytes .../noms/k3ksuke2vcb2hgatpdqbhildb8raab5p | Bin 0 -> 262 bytes .../noms/kmjfnt24t2vf8e58u3r5insr7tfohm2e | Bin 0 -> 211 bytes .../noms/m297l94np7ub1bp8irhpf3eta6bpegr8 | Bin 0 -> 923 bytes .../noms/m3sn7rmfc0lbis3codosl1k46hpv0kod | Bin 0 -> 457 bytes .../testdata/20200113/.dolt/noms/manifest | 1 + .../noms/miv7sdaoglrgfs2rgafm77kr6h9cbgvn | Bin 0 -> 211 bytes .../noms/ml7hl70ar993tc32gla4ttjar0ogka86 | Bin 0 -> 284 bytes .../noms/naromh9oel8c6dmmg6lvg61ot3gvomkv | Bin 0 -> 262 bytes .../noms/oarahke38ufh3tmnfpafuvb51dfbhgmh | Bin 0 -> 783 bytes .../noms/og4gt15c913id9e4iv7bcobjkn6aqn8d | Bin 0 -> 229 bytes .../noms/ojdo9hafo3mvlko0cefqcom7os26utln | Bin 0 -> 211 bytes .../noms/os1po1dclurjkflegl02usl2r8rkg2cq | Bin 0 -> 262 bytes .../noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik | Bin 0 -> 229 bytes .../noms/qqc5268agbqc0nqdud6gn7m202teffnm | Bin 0 -> 1069 bytes .../noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 | Bin 0 -> 229 bytes .../noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 | Bin 0 -> 262 bytes .../noms/s69lvejsvg9so3l2nsquavmbai4dmu03 | Bin 0 -> 934 bytes .../noms/srlc19tj78ldn4hbb8duso90i1vugc59 | Bin 0 -> 249 bytes .../noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa | Bin 0 -> 309 bytes .../noms/u62g6ma6evirqjb11i0up0p1hppb50ou | Bin 0 -> 284 bytes .../noms/ug6l7o53ntp50f252u65cj96om411v14 | Bin 0 -> 926 bytes .../testdata/20200113/.dolt/repo_state.json | 8 ++ bats/helper/testdata/20200113/README.md | 75 ++++++++++++++++++ 58 files changed, 85 insertions(+) create mode 100644 bats/helper/testdata/20200113/.dolt/config.json create mode 100644 bats/helper/testdata/20200113/.dolt/noms/09hv7tllti9b3hfi7u5m3e7lpbne390a create mode 100644 bats/helper/testdata/20200113/.dolt/noms/0kl39j0i7gljemj93loojdhdbsj9lb36 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/1nrr0bod1960bccqc6c2med68hod5gc7 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/1rnurg4no9s6s23mdq8vvfmj0cik47db create mode 100644 bats/helper/testdata/20200113/.dolt/noms/3dsltc9vis2m6o89bv0dh482pfme30ss create mode 100644 bats/helper/testdata/20200113/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt create mode 100644 bats/helper/testdata/20200113/.dolt/noms/5im08tb1mu140r7kvtrd04u8ub5qk607 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/6739m2utlhl1k98f4o2fqmgtm12ino4t create mode 100644 bats/helper/testdata/20200113/.dolt/noms/6oc2i2n9ln25n8go78dalvo3e9er9mg3 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/7er6962c841ghn8j0a357ujde9daq3mu create mode 100644 bats/helper/testdata/20200113/.dolt/noms/7vu480853r3b0hitt89l7gc3r854fb53 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/89knkh4sejb7tf05gqq01osftlbsmdq1 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd create mode 100644 bats/helper/testdata/20200113/.dolt/noms/9ibrf56gr6gsgr7cpnda4au9o0vd0412 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/LOCK create mode 100644 bats/helper/testdata/20200113/.dolt/noms/a8hqijvam2c6r9qvbffsdj5r55bis0mn create mode 100644 bats/helper/testdata/20200113/.dolt/noms/a9307merr53dd71vj459m7qo6rk435na create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ag7kv5tuc4jvovmas7r5kel32dd94g86 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/c8a3b64elue3121ng0rgeagcnf48fbat create mode 100644 bats/helper/testdata/20200113/.dolt/noms/c8dirve58o6npl3aufbupn3c2pt55el4 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j create mode 100644 bats/helper/testdata/20200113/.dolt/noms/csopsqdj2urggh85gbsfth4c9lf4r8vb create mode 100644 bats/helper/testdata/20200113/.dolt/noms/di7sdosugcarnn353e8ldbnlts9v42s5 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/eiit9a47igil0id02vhgpq4g72ga3dha create mode 100644 bats/helper/testdata/20200113/.dolt/noms/es7vlqed0665gq9es3ns2uqeh75bkerc create mode 100644 bats/helper/testdata/20200113/.dolt/noms/fkes7bk2bl0p9cvfgk3dd7uf6p4cqcm1 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/frc0ef452fhh97o534e7lol2b427lk56 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/g2slg3mhtfb5m2tk00t8mor5lkboqj2m create mode 100644 bats/helper/testdata/20200113/.dolt/noms/glc2mu652o0pt893a79j30tc6kgvk453 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/hgsmoadjsib12ml6e05or4q5urv9lt7l create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ie2tcnurro57vl8urvucbjdrmmf9bo0h create mode 100644 bats/helper/testdata/20200113/.dolt/noms/iellg8am40vu2tf61hbe7i0anhm76gtv create mode 100644 bats/helper/testdata/20200113/.dolt/noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ju51cbttj99itbsbk2svu7sij2tu4rhl create mode 100644 bats/helper/testdata/20200113/.dolt/noms/k3ksuke2vcb2hgatpdqbhildb8raab5p create mode 100644 bats/helper/testdata/20200113/.dolt/noms/kmjfnt24t2vf8e58u3r5insr7tfohm2e create mode 100644 bats/helper/testdata/20200113/.dolt/noms/m297l94np7ub1bp8irhpf3eta6bpegr8 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/m3sn7rmfc0lbis3codosl1k46hpv0kod create mode 100644 bats/helper/testdata/20200113/.dolt/noms/manifest create mode 100644 bats/helper/testdata/20200113/.dolt/noms/miv7sdaoglrgfs2rgafm77kr6h9cbgvn create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ml7hl70ar993tc32gla4ttjar0ogka86 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/naromh9oel8c6dmmg6lvg61ot3gvomkv create mode 100644 bats/helper/testdata/20200113/.dolt/noms/oarahke38ufh3tmnfpafuvb51dfbhgmh create mode 100644 bats/helper/testdata/20200113/.dolt/noms/og4gt15c913id9e4iv7bcobjkn6aqn8d create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ojdo9hafo3mvlko0cefqcom7os26utln create mode 100644 bats/helper/testdata/20200113/.dolt/noms/os1po1dclurjkflegl02usl2r8rkg2cq create mode 100644 bats/helper/testdata/20200113/.dolt/noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik create mode 100644 bats/helper/testdata/20200113/.dolt/noms/qqc5268agbqc0nqdud6gn7m202teffnm create mode 100644 bats/helper/testdata/20200113/.dolt/noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/s69lvejsvg9so3l2nsquavmbai4dmu03 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/srlc19tj78ldn4hbb8duso90i1vugc59 create mode 100644 bats/helper/testdata/20200113/.dolt/noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa create mode 100644 bats/helper/testdata/20200113/.dolt/noms/u62g6ma6evirqjb11i0up0p1hppb50ou create mode 100644 bats/helper/testdata/20200113/.dolt/noms/ug6l7o53ntp50f252u65cj96om411v14 create mode 100644 bats/helper/testdata/20200113/.dolt/repo_state.json create mode 100644 bats/helper/testdata/20200113/README.md diff --git a/bats/helper/testdata/20200113/.dolt/config.json b/bats/helper/testdata/20200113/.dolt/config.json new file mode 100644 index 00000000000..9e26dfeeb6e --- /dev/null +++ b/bats/helper/testdata/20200113/.dolt/config.json @@ -0,0 +1 @@ +{} \ No newline at end of file diff --git a/bats/helper/testdata/20200113/.dolt/noms/09hv7tllti9b3hfi7u5m3e7lpbne390a b/bats/helper/testdata/20200113/.dolt/noms/09hv7tllti9b3hfi7u5m3e7lpbne390a new file mode 100644 index 0000000000000000000000000000000000000000..f8cb6d366e7dbc29458f3d13dcfcf52d8447c84e GIT binary patch literal 159 zcmZo;Jix}l%p_ctnpUizk(!uNte>2pmzI;6T*7|3&3+lzWYd**8W?jn1>U>bG4HQC z3k#E=td2--VsS}oQJfY7g9xkEl*~LJCoeHaKe;G1u_Tqf`*G^6DVeU0CHBYj|D8?C zFAd9>$ig@w@5R?&$wpNSi!9R_ARvGF#+NHv*7SESp63+-6k>#mxBcIG$jrnz$;{Buz%b2{ zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#EotX554YI$;gPHAo)yPSQH<=l@q|Fir#ytvrEY=-yzy`OyH{;_ Zr0c#zPyPdi7@^`{{%^f;NG17Q004a`YghmP literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/1nrr0bod1960bccqc6c2med68hod5gc7 b/bats/helper/testdata/20200113/.dolt/noms/1nrr0bod1960bccqc6c2med68hod5gc7 new file mode 100644 index 0000000000000000000000000000000000000000..dfb3629497b1f2fe483a0fb647fd7a15b9341a15 GIT binary patch literal 330 zcmX@ZXv4|ooS&PUS;EYcn_7~{$-&4Lk&;-F$i|YATAa)z<(ZdRl9`y3S(U25C|;pZ zlvo?Wu~A}Dnvs#YsZp|_nMIPRv2m)oMOvywl7XdBYFcs{ zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2S{Kvvk zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+Z}_lzgc;ai$M%1#0VAt@_*}%Ln_Jd0sw_# BU8Vp4 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt b/bats/helper/testdata/20200113/.dolt/noms/4bujnjuatdli0klda7ucot0tl836jujt new file mode 100644 index 0000000000000000000000000000000000000000..c41b419f7c20cf86bd1a0030dd7abbbd06e7ef12 GIT binary patch literal 57 zcmZSPU}Ip=+7fK=!u{H&Tf*+M7$AT%eP#FypGmJ@6s*v61`07k#hL$ay>Un-`CR}2 D-mnpz literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/5im08tb1mu140r7kvtrd04u8ub5qk607 b/bats/helper/testdata/20200113/.dolt/noms/5im08tb1mu140r7kvtrd04u8ub5qk607 new file mode 100644 index 0000000000000000000000000000000000000000..5dd0d916923eeb0cdd884d3c2a23be14d91e99a0 GIT binary patch literal 832 zcmY$N!N$NS#3aDL&m_bmu#J_8B_**WQQ(@G2qOan1K-tkXYa|s@lE*upWoin^8w?B zZJewniAg!BOe{tD<;CpFUIwQ51{NHB|4unSp5vg~o!iVV6XxgpskGT$@w{@xp~E`oV>1i z$@wX%Db8R4R(_yFd~$wXaY<2PW?o4#Z)S0PL1Ix!e12MdK{iWvW?l+QUSe)4b4g-4 zE2kh_GfV>$zoczNd`V?NDjQH+Vs0@L8xI2y(1Q$2Odx*(0i%F!anljz3!FSD`8g%= zDM|4~`S~S`Y+&COvjG({CnhDcU-7^9?#;6TULl{_922G;;o_wxYdKk2RXZR7g6v)7 za9{`dlTj)Lmp54j50LChL0dsX7Ld`8OosJh2 zGl+ieno`~VkGI^t=q7^%6EL=zm<0aaU;rY&8w~B&RtC*x{4k4+ftg7|S3fPMv^YcG zFwNL3HObV{(%3L1Ejh_3G1VZ=(!|U%H8I)HEXgdDU6X%8k)5I3^mW$PEOz}*aM#<_ z-pRtmBnXW9V*QNN#FS$F+{EIN)FSr7g0DAe-|Eu+sqx3$Ag?Upaja4(3p0}lSS2ui zQ;YHvbM%voQWHy3*}EU7-kOr>>R4ibJpbR>wEWVrjEO9aa^FN-!%xoM;a0N61{izH zu!IPT$_u~44X%r41p}E(u=oP9K@qJB#1DZ?ZXmrFIng4=r>>{?``wfMJ#M-k$^NVF6+wU{3qL^~NEUo>rTB4zmg+ZdJSz?NjS&B(&im92QnVE^HaiW<;N@_|X zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2Ebw`q0K{JZIKDc+Q#a%&h5C zk+6jc6=_J3QV)`^(G4;%DM~_%pexl&4?P4@5ZgnzHa-MBG<drq{TFeS;eSmrYyIw%A+S_;$X{0B_KEGoWfvJL9-a)(YEQg9=Mp<;Vp&B+9x$UB*3Z ziIod2ri<;lPLq1NUlO>cw5g}U$8n#mMatrl1_^~K$(L!o@-sR`W|x#J(j6(5~^0)-0S;fDe@ja287u zY_gbON!pgd)!1xq^oK8S^=0{s-~RZ~d`o|ALXuHrL*1Z*87JO;a%!zvL3;8f+wYTu5r!>Eqq?zv2MG3U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+qXA(iBJ0RU2S BUAk14uD!S3 zd&(G2W5QqYPsGfSXv7%BC@S$qBB&^sNPLhW8nR#vD&Uity%?Vue!X*Xi~8WnIp==o zeBb@f`Tc(1`Pnmb(~0m>p$-Y|Ey+Y*Dj6tgu*AYw9>1Rq?_%bz0vne+k|&)nSOhv} z7AG3zl<+*|M5Se3F_}duF%oq zWs|kD-35ym^quxa18{wOQRy|QuI5RJTAZ0xM1HbW&9f54-kA|aQ6$espdg(j=|t~f zk|;E*Dx^j75TcaF6w*7;KQNRgL&Gpe1_#N;;Z!OK8_k^V><%@z*@09cgTq7p>EuJ{ zYCz*kZ>+1M+3j!1Dx?o`rw3BWSRe9+yFy|2s?g>w1F6K8?PODOJ88jB)VE5W*0qxR zIR0o!ALWgw>ejSF6U7FXiBaDg$umjHV`LJzhBisExVrC{l&<6ul5r;4erVF>x;-Sf z%MmcUJEGlkJP?gUqw!D|SrdYGHHTK8K~m38L}%lwQLL2omD95~F!byV>`>H^tt&=` zwhr_UCHrEvg0~|U?VPO@M4Va_ieuydYhEJ54utYa_Mz0i$&N4M=$#Nnj6|4*_c*e+O%3}yS#tOP7I3W+* z+M&}D{G}Oc27BsjKyr*Ed|(P8)IAE*j#0FMv)$bGte=4$Xy@KO+y4rldD)3-gqHST zu2`}1!8nVDqp@6&ty3(m}gY8f^#M8dgeO2I#oy}`1%XR?AJM?vMqnafrWZI60kEIWf=@+Uh!t-0j(YDSS~v~0#S433>PPS9HrYT$vp zPCa(;KINKRx?Vh{t9x6ge*9ocbc^EZ{2Ubvk=jSN0GqgMba4^>jZE}?{=aegdVF%V zID0~i5Q+Qi0S4f~E{uVDw#KUNXxIWU*7!WbhTz3^Etq-nO6{Od@;MeDYEN_Kfo5CzXRXXFy4Ui zJ-G40idd-l?R}5LH!trw5KcwETzIcrPaPX}Izo3296f&ya)>aXxnIBY;q>`c>TjF> E1mng1y#N3J literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd b/bats/helper/testdata/20200113/.dolt/noms/9guvpb6l55h1t9aqaa9b7qnp1dnnelkd new file mode 100644 index 0000000000000000000000000000000000000000..40bcbfc33ba5f0bef4d41e26ac1e3cc958162bce GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQ*)lcF*uu!%*f815AUP@3EYTv-IK|Z1BF)k$$u!N3 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+{oso|7zE-=l5a)z5D`JFU4o#84(D(V=Nvx1@0=NJkD>Ll zAn=5u22>EE25Qe;B8aBClsm}kjVKY+Z4qS5r!8d6!89PAj~ZMu<+E_V?@h)Y%$ga8 z)xn;@B8|AmLZoCf-D*ezit76a>^R$U!t*D*kQ>4aC>JCsr0y<$ytUq0A9EVn>5X&A zdvot9)suRGL^Kq<20;DF8eJ)S{RhOp1y+5NXYug(^&J&pWg2mj_%YqP0F1|(I{@Eo zp4~kSnvk?q5@2|w#sr4xGGEy4m>n@Dpw?!lxMl(qw*r`mhqnR&5K^Qd{psY)q0#r* zV9mcBI@8!x`vaoZ96RFA|jsDlJK}KWeJ<*?ZSjA@8GJNFE=TIoWX{b?y<5eN;da&+hVFf zHMvOwj_}1s03<~SbqGy_47aT=#~iNTSnA*O;NU`mgY@^=^0}F6qI5X_7Nj=Fr4+{1 zWgz|7GT7C=cxmLBCLt_Iop+5>;_|M5a6u#erS<7i$I5Ky&uzbUc8A5$wNtG_s)8DE zds#B3QAqqQ=g;f^`vn!2e!Tkp7ew*|AC~4v?tf#kETQyOnNR-bPDz^~V zwOK%PF+*w)$Y~2PB#RcNCe+S*HnWja3!-TWyU2FnP7C!r#5?WSHw!k1X-Sh*faB>R z_Nh%g7-&e=iym?@+|eq<`)a#wr`PtV%4`=?hTMFl{Bd@CJF%lcv2RrGdK6wMeV;2| zQS!*g9-~14D6jPO>G;ZU;@6?y$LhV}^|h;YokwQ`JsFjX$SL4c^MX2)oDihPHNz+F z3NgqL2@4Vk29;1^Z%)-L;xNPNF?>Q8kQwT6FqNUAN>W7ziaxnTL)6UiK!%UAid>~} z0ZGynHFQa;$+Yqh0E$VRg6mO9t!(p5VqvRA(jQ1+er=eR7V${4Iak7fQ6xfIHppa~oh0-)$X2qYT1-U|*t2T+fx zyt%l#@#Ry#vMN2`G{V{L-G#>I{!d{~I8vnrU?f`J6gV$z3f#789bCu|lPZ%#>tn@O zrf#aEsc$j+`P^1bn`bD{{N(&14a6Z;-=Ql^g)!^-_NyfSLHong%jq`a6Vg|6I)2=rh@ zG(7?U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?DImBM!8ghiY5`%8VD3=pu@Lp|^xW7)nNQV+AA T0fiW$;>Z7Qy>Un-`CR}2fvHko literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/c8dirve58o6npl3aufbupn3c2pt55el4 b/bats/helper/testdata/20200113/.dolt/noms/c8dirve58o6npl3aufbupn3c2pt55el4 new file mode 100644 index 0000000000000000000000000000000000000000..d2c48a305f5d308e2106d5c722a0139e759f2d0c GIT binary patch literal 1069 zcmb7@Ye*DP6vywqGqbZJyRMt|Ft8+z>|yI8)0FL95)`ymUK@lZbQ4~ZJQL;w#Kq8_j4U-_!?yOlG)rT(k%)P^$Id}fQ^PjU+ z8ZJ%?i!BUUL04lD&13-0xz}leE=uAW9j0$#Jmd*4=$dI6SkWw!0Xgr~9Pe}* zc`|c`*6`M@sDzxFZt+@7RUJ`m;E3q}z^#}(xv_X%=A#V&(hZ6xB8t?YH5`!;iZ)Od zu7dyohH5=XmhvFEaKRZ4a+adian(+UDY(_Sa$nErR*=hCN<=a(9ErMXK$xqcJI;;P zfHXQrO1gtfghaKKz1v9<03K)0R$juP%N%3juqq+i(3?!Q<846R6o}sb_#sEzW)@4S}VxH`zy9O%kw?`;1&v?OFU#Xp$+ zjv@gf!NC4vhV%a9JqekR^*1NL{=kVGF5t3dA!PF+1AaP@y5Sb}kaLN;YVl&2H+0>C zj)Yo*A0Y~d1r|8>iOhJG&Oh;$2~ zG?p8S12Wgg!Nq}=kr6l)a{vbA<@;ncX4dp}mX;L=MdC84u(Uvw z!=hNk&i5QPmKV-y@2==CyE?w3a`Dyu2WW)SN%Ku#y@W;6M~pA4ieRz6-qAzDRLZG` z(;j?v`fJBlH7pF#4D#B!?nTWJY+91R-fLaak#el0>)BqYUJN{c(sue=B~7D@tOePc z)HLyrHRglk#Icg0Vbv!X61F7v;Gp#MxUz1Qwc?IGc3;+G)%8bc_~N{AWU_&F%L~r* zlAV3S*-|84lXyka-DK@gHgB>C7JFiSE%TPw-W93&)mP%R c!$-%JjhStG$U8I%GMI|-OYxhz!iUY@0U+p8J^%m! literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j b/bats/helper/testdata/20200113/.dolt/noms/ca9rtjbjd7n5pkodo3rsl6bon0s8qe4j new file mode 100644 index 0000000000000000000000000000000000000000..68b8f7b692c5d475b29f3793d090dadefee95a37 GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQ*&^A*!qmtp*~HK!(b&M)*x1m(FeS~%GSx6CEzvxU zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+}tD007oA BU6ud< literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/csopsqdj2urggh85gbsfth4c9lf4r8vb b/bats/helper/testdata/20200113/.dolt/noms/csopsqdj2urggh85gbsfth4c9lf4r8vb new file mode 100644 index 0000000000000000000000000000000000000000..995b973c3de14c4210ad927be0677d853af208ef GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGG%+>RJlQxk&BQp(FwHR8JT1xGG%>}(G&MQZA}P&` zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+f-(xca1YEm!bj}nZr_HH8QLM{=LX1%HFaNjRIHZ#NE&u?` C3u1c! literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/di7sdosugcarnn353e8ldbnlts9v42s5 b/bats/helper/testdata/20200113/.dolt/noms/di7sdosugcarnn353e8ldbnlts9v42s5 new file mode 100644 index 0000000000000000000000000000000000000000..5cd10ff7dbedaca00bfd7ea640b28257b53d7d3c GIT binary patch literal 192 zcmdnYcz}(8g-N(5HLX}bBQ-IlSU)*GFD)lCxrAMR&$phB%v`fCh@JnFy?Fuymz%@-d}eX7A6r{Erq<)^5p!S(%if< zU4|){c|g^9i8=boMX8A;sqEd4Q*TYlbagDTKc4^ZY+8P4SjI#a#(8avc$?1~f3DK0 k)MS8w34umw@hasTCVg6}yBsLQ2o>M_f9s7yD#`Bx09u7eDgXcg literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/eiit9a47igil0id02vhgpq4g72ga3dha b/bats/helper/testdata/20200113/.dolt/noms/eiit9a47igil0id02vhgpq4g72ga3dha new file mode 100644 index 0000000000000000000000000000000000000000..d4c2af4cfb9069e0058c8099377b0b0add76af23 GIT binary patch literal 229 zcmX@k_@R`IfrUv!S3fPMv^YcG%sAB`%_2E9)yyc>C^^l@%+%P}$RH)n*w7TnPf29g z(#)vM@0T7p0~Z>u01UrWETZ=jWy6WG0uepKh~X#x>b= z<(&q`oK1oEu6E4(>(0W$BnVQ=t0R(|SX`1?6sN_&Ai}COB{L7m$xF=9PcBMLEJ}tD004PJQTzY^ literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/es7vlqed0665gq9es3ns2uqeh75bkerc b/bats/helper/testdata/20200113/.dolt/noms/es7vlqed0665gq9es3ns2uqeh75bkerc new file mode 100644 index 0000000000000000000000000000000000000000..0e8915b9ff59df3e22c7723cb533e88241cb5c0f GIT binary patch literal 881 zcmb7?T}TvB6vt=o&g?X@+kUu3W~s?4Y1;a^W}*^iLZqz((ZkYscRt+B*%_I+Tly9e znBi1r{AxDOg)5n6=OLz+dIkrC)3LJ?HxcGocW#fJ{}z~SEWhx^W;i|r4jVWBA_(&oX%W*(wT!6D*{`lEaTaIgQ=cV{m5uH0gKgcG61WC zOwxJ37=)ZAN(`~^(0#DRn^iQjXp!@if2G$gh1sMN>kWtTmq>0 z91p*!=hDU+wCwLcdRdyz>i9d5MBKzVFmXq-zCW*-S6UyO3I`%0ham-py2iux!th1q*y2r#d2R^xm3pFSh}>T!nB)%6*C8h zV@-AYhc8{G07%B>>n^_t1>J>Bl;i-9n3v(|zNG7=1Mkn1@}tJN>5kj0brc0`@m_PD zBM5aQYNvAv!a?WuV9!NOfwGI&M2JMD^RxJ_Cs2C`RZpmElad-b>F=heH0gPX~20D=O^4^jz1+Xa-zo#U2x4Y8r^-S`~0$->Ce(!{_lEhX6$$TUkfF}GmX z(#)vM@0T7p0~Z>u01UrWETZ=jWy6WG0uepKh~X#x>b= z<(&q`oK1oEu6E4(>(0W$BnVQ=t0R(|SX`1?6sN_&Ai}COB{L7m$xF=9PcBMLEJ=H%D{RC2-y0ip>Ff?%EU$U!w)0? Sg&3jY$Nz7=aY!ZkT>t>S@lqH7 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/frc0ef452fhh97o534e7lol2b427lk56 b/bats/helper/testdata/20200113/.dolt/noms/frc0ef452fhh97o534e7lol2b427lk56 new file mode 100644 index 0000000000000000000000000000000000000000..2f1f2ad24e2a703dd0bdb792d43f2e43fd12574f GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YaQCE3h8(IDB}#LOZs#n8k!%`C+z#V{?=!oU>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+o?WMM{#1nX#prL7JsevSC`9rLmEjxmk)ys#&UWiiLq0 zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2$im1Z0#=!s2UL=mn4_Oul$uzQibL^s$u9yoBFf)AeT?967KeRlu9|1*PJ zo0Jh!>PQSP!4yMLG4({uumvDU-bzC;RiajyaO5f>lkLcgY1q`lQG>D!DEUU^`Nr@l zGdC|;A=6E9g4~8lWh0^Mt~j=E%yt3bjoLDMpt7mS@p=IH`lz8Ij@94|93u$D>p6-y zLI8lkweDh5S%}@F&{!AyR@B%i)wm(%;A(gI_S1u_!4!!`W5lL77WdYIh*ZmWoE)qL zS$u+(^oD>Uh4}6@Lm`kGnyaQNmzTG&f&e^S()sBzOm;~E#Sxt#-ZC3)vEyY>TNaG> zynCBx%I?cm13kfhSGEUbW@URgl$8TB>=Yl_BAR%*qA|Jd#gS*!|FXTSc~zHxMDdHi z15Cr`5dDMS?^se$QaqeL79`(K_QSv##k@(;AgxL<`k2HIa)!a zL{pU_O)bKuC8fnBb4$hPnR~2-g%b~+nt!k4!q*MevoGw}$s;t9nQ!~+2v%)BI|P~@ zRjBCi9&CTlWgO}oefzUJux@B^eSVl1kk85W&TNWdn-WXB)w-x7V_#9{!xpHY2|l{p zcKAy*&!e0PGbS0N@%wpem<9H;?j@Fib-!W}Oo_N_fIQeAtz1kOT{DMzH8W9Dx0i>T z%c`2aC(1sriEmoTEa!&JbnI`>E$F-o&bP8P8g5j!cH%u7PgshV&G*uqH@ykgPCa^O p!?C3ow>@}0d&_a-&CT1r-WF@%9eamogN3mB>$(0bQU>bG4HQC z3k#D7tJajvJfMQS#2o$PqSVBaRQB%2skf$Nx;mEFAJ6}HHZ8w2EMp=IV^k^MdZC^g ogKsQJyBHwggU&QNapI_ql|yZ$G*>+NdqWMR^h&)ih`p@NN(iTz>UA?Gu*mX)UdHPmh4a=9%P zc~O9kiJgU+cuN@Bo6j46uF|R03^YoMS1I2x>C;l(oi4Qi|1Lc@N RihyA6|E)I;sU*J(000~VU6KF* literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr b/bats/helper/testdata/20200113/.dolt/noms/jji5lv8nq265dpk6r11ug3gb6ih81hdr new file mode 100644 index 0000000000000000000000000000000000000000..47faecd50819655eb7ec298873b9937a9d2edc55 GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGJk260EyXO+Fx4{6+|Vq=BGtmk(%3x3%-q-{Ej1;H zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+qXA(iBJ0RY-0 BU>N`a literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/ju51cbttj99itbsbk2svu7sij2tu4rhl b/bats/helper/testdata/20200113/.dolt/noms/ju51cbttj99itbsbk2svu7sij2tu4rhl new file mode 100644 index 0000000000000000000000000000000000000000..2820e12a57cee57e3dbba2481ecc9ffb44907975 GIT binary patch literal 1554 zcmb7EZEO@p7~Yw?z2z>qUatWZgE;hxl$5*P-dDe*($b@;wmmFIrAf){-0o~|b9cMv z?p{Bz{wN6`AO?&`A~Bj6h%}0c35hAyC=wtsB*YL>kzgW;{@^1-{ecmSb9<1$4}SP& zKHiyqXWn_9=gl5`>aS_wVn8jdVW4|3+1cHn3>9U%1n@2&2%yv$F~(Ff&U<)II;Wb5 zHj9`RlCg!6mBSX2aLFng#6%bwq@x zNn~W{h$c{#$?8>Dn?xpEgy$l5$uZt>iKYlJsJUMr8{GjjL7;m55#{ zkkuwC86-$1RMS$mQTw5x%JT!L%fOnHLq%*_#IUylXtR_fMO;~kqR4wTP!7^blBj>St+59oSrK*9Ea~3gM~;ViwN9j94T=cSC>Up^re~C4xM!GY**5G&f)Jga0B!6v%km)PWjX+}Z25A^ zmQCT+_ve&fz?~U4YhhYO&}r!7CfBpI`^D+$6@l2IuTPDM*Y@StYoe>x3t^2t0FP~XW~PJP7`QjjJa@)%(e0J>f|Zf88AI1C;IeU=E*j{d#m!wxUAukrw-R65_humm zzk2QIa_nO2wl{D-8H30}fcTn5#ep&yG9^A?yG4f8+D7^9xSsTefcGNyq>P z09C;)vo}X{$>fghx^ZainUT8VudbW8p!|MkZpWvM#!n1-pcCg_m}h9)IM4Xju0MAK z-1)%8IABAtNhy@gTvIEKOL8_Vla{Q~8fi{oArVm$ay%hKF`Z)E8s7nugzY^|y|BWvjuj~!}-Eglttc{7+x7BTNI^beEl8Q?V z4HudugJ6qr`>vBK@2Sa7>!ox0!UaVy59JOz!5_-=zK4ZZ5pZ(P7cZQ@ab+cS9s6U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+o>rs*#1EnW1Ttr4bOCC#R*D8JQ&+7@MY=rI;m}o20R8 z@=qwTGnAXY&ib0guKx+{db`>?S(umvi&E2y^)pfvQ;PL-6N^hyi`cs#r{0>9>FQWw ze?0%+*|hx9u#AZ;j7%b6m6>@!C3%TC`pHG9i6yBx6wgtg?9R7oWB%fe9GMIdu$cMx d)CYz3)e#r|@9_r;F+#;>|KED!kV^8q000nROilm* literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/m297l94np7ub1bp8irhpf3eta6bpegr8 b/bats/helper/testdata/20200113/.dolt/noms/m297l94np7ub1bp8irhpf3eta6bpegr8 new file mode 100644 index 0000000000000000000000000000000000000000..058cb989a5da19b46f77435e50c5403f0ec25764 GIT binary patch literal 923 zcmb7CT}Tu`9N(SWy=||v+q+D(&?F2qwM$bw3pFzn5mdpW zwd}#tD2O7WL|-iXFc2S7qSCOAK+!NU6naq9^76&s8WCYn$<&{*L z4a=7VSwv#q+68UG54<2ts-{4Spjq?3;f(=c zipr|xwK^Zt<1y$}f!;_Mu?z$NAvN$Km5yUWZ*+dvD9Rp<7ahDJ%NnU)W2<5*fetzZ zrbY$Tb&Zp+d~; zTQMUUk~9Lqiu9aa7F4FaVfI#aqu8t9SpB^L5 zF=bH!agU&QNapI_ql|yZ$G*>+NdqWMN_wE=o-+*3U>yOexk+&d*EB$xJR`*WdH4=OZ)M z>r)1^< z&B#m4(N8W)O)N=e?|z(mYf7f8V~PFo{C{WD@=L=qCbBTvd@1Be`QXXM$iyxxr77ki z)S7?TbeN5a(SSjO z)xZYLcIN(KQx2F01_lO3m}NjV!^|&Ci_h*mmo?WfnidTL9&IRrDc+(VUj_rfr+t&MQTz?qH(HuYLclj zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2U>bG4HQC z3k#EotX554YI$;gPHAo)yPSQH<=l@q|Fir#ytvrEU>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+xhSABu*_K}Q)N;9A%H^L0nf8aLl`Klu_U#0VAt@_*}%Ln_Jd0s!lW BVMzc0 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/oarahke38ufh3tmnfpafuvb51dfbhgmh b/bats/helper/testdata/20200113/.dolt/noms/oarahke38ufh3tmnfpafuvb51dfbhgmh new file mode 100644 index 0000000000000000000000000000000000000000..0717c58dbe06db84e9462ee8471497db6319539c GIT binary patch literal 783 zcmZvaPe@cj9LHy7=e@UYUEN*X!YFHrJe2Nk79EOAMXghm6-B7M#`k93hwsn!X4Voq zL_tJK6ln*eA_6P$5dFJUAa$?^EfPbsqUg{e3cYNHYPYc{I`ri?%rL+2{Fu*gW=7el z%8jmVo7{(O%8BZS^6XuMa3W)aG9ASl41*dm=8A0EbUI_6doV^EBc{7n)^=jLL~UYP zsLUWemh048=7Fp^e?FnRMe`NAsmDy$LB5*AYU~i3qLQXx*4Q4?>M|Xsa?_@a6FU>W z+WYQeAzqSY)YJa%hKA3LJjk~y8RAigGe3aJ)8lnRfwSwbzdi!3n=NlAPh9-5MQ~I+ z#!5y_M5S(GW$C7u07%m9#3cYQ90clulN*kKawHTE0SWs3N+7-_tp*L(;+oN+d9KT$ z%t?nunT!-wl8W{tEO1$X>1jc!c{HWSr9mGGg`pe`M-?@&Q(9c!Bxs?cS8lInl3LvC z=&tBkqZBzUg+!Ay-E|oEh$-$~Y%)z?aLr9=nJz5o4GbTY`#9;8)X0L`NDW4zMYZ)B z@5xYEIEl@W90Wo5!jBMyN(2HNU%UGaumD0n(xEH4%X?S%kBlZZft5q8*Gle<&%iO~ zE6C^O!^wdlLaI^uq|MctGIadYKzDiD^6M?NhsIJLXYU`qR^?5DB`91fY+)ro4n=Gp zhXCEkP0(9#Lw zaH{lvps)JP<_2Cj>gLB%ZgzM242Dbh?SOwu0HMK1eV!F2cZnqg09A;2=-<)<6Zx%u Z>1AxnXc`tdB!&<^Rk$w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?ET)>i3Z7Qy>Un-`CR}25LHt~ literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/ojdo9hafo3mvlko0cefqcom7os26utln b/bats/helper/testdata/20200113/.dolt/noms/ojdo9hafo3mvlko0cefqcom7os26utln new file mode 100644 index 0000000000000000000000000000000000000000..f52f1557b31e1cbd9010d8bdff155790d6a06548 GIT binary patch literal 211 zcmbQu_+b_s12dC`u6|lhX>o?Wd6KzNnsJi3d77D}fu(_wxw*MviiLTaiHVV=si}b> zyC(mHB0EF5>FcboS?v0s;I6l;y_1EBNw6q2tyn)JH8G`FKR2$im1Z0#=!s2UL=mn4_Oul$uzQibJv9#ZF;Ci74hTM-CljfPlrX f&i<19xbzc4^D6cWKp{q``0W2%ZyZudeir}$un9~) literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/os1po1dclurjkflegl02usl2r8rkg2cq b/bats/helper/testdata/20200113/.dolt/noms/os1po1dclurjkflegl02usl2r8rkg2cq new file mode 100644 index 0000000000000000000000000000000000000000..d6e77f36f33f002063d0a6594311d814a496986e GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcG+#)eC+0Z=2D9OMe#l$GZ!ZO9u*fh<;)HKy3#nRH4 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+ literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik b/bats/helper/testdata/20200113/.dolt/noms/q5eq2e7gn1osgqg6bdqctgi7o7lapsik new file mode 100644 index 0000000000000000000000000000000000000000..1ab53ad2dc16a210b89edcca6a9872e44ec57472 GIT binary patch literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQ(LBjGInB~6EjiV~#L(E>#N5QvJki+DDACM3*~r+C zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!hX8Vei_$f z)0KA`7;`oS-n-f{@2@)x3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?Dot1ZccsY){Sv~1p51_;=?E`(*)lbGF|$4%0E TfkKQ>@#Fuu-Z-R^{4M|h&hb!T literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/qqc5268agbqc0nqdud6gn7m202teffnm b/bats/helper/testdata/20200113/.dolt/noms/qqc5268agbqc0nqdud6gn7m202teffnm new file mode 100644 index 0000000000000000000000000000000000000000..ae28d8ca6d1768bbdc1270ef23f534fac81f31d8 GIT binary patch literal 1069 zcmb7@TWHfz9LCQ%Nt&j%uHC%DRGf-BwNBmEPU|MSi6B^}vWH4MO;TH$CM7wYQ&2>3 z&dY;Wd{Fl=W!^;wipU;R6mN+7;Ou00!5gB?DKa0#&6Dc1qCR-Y$@zzz{FCqZeL2iD z3ywM|sw8j~CK&RPuBH;2$pKbyRcn$iD{`d{^OkWr^o}U$nn?^C(+J%G1<&vT&qx;K zj4tS{6v^78g6x`3L@lMNwj?%i!n6V4ikTw4Afg@-lW_pqcubQKLwm3qPACW^;|#&8 zApn45nzqxWtd5?9x=}Xzu9&u3SYd~lfy?a`o6q(w2NMMnODHD6iKMF@goS#x?Nnbq zaI-1e(p5KC%5m%z*uY6WN@=X~{y!;zb91vh#ZMDsxY8%DPHKIV>8wPM|HL zmf}ZEuC;o==W^=lF4~4 z{kKR@z*A&pCJ_3UGRQ;dL`aaicOhM(ZZ*B#*DxwH;dn66cqj6@w`0?>LZb_eN7OBZ z+`Q1A2K1;&1H1XS>=W!w*#L*8%3B)!Gg`Xn+L;~R>=0Cx%VjMMWFepqp$ fb;G;+llR0AmK@Ec&#-jT!Oa^um%cJl>RI{?j7VNx literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 b/bats/helper/testdata/20200113/.dolt/noms/rcksm0pvt2fop4deb2tf881mo0vj4ih8 new file mode 100644 index 0000000000000000000000000000000000000000..3bc9ec8ae22c3271c2ac4146a9f0cf7021ad0834 GIT binary patch literal 229 zcmX@k_@R`IfrUv!S3fPMv^YaQ$<#PG$t2Cxz|zPhCB?$n(8wYs$vDwCB{eBI%_zy7 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!hX8Vei_$f z)0KA`7;`oS-n-f{@2@)x3zHy7Ew7G9ZenpsYEhgP1A_>w)|AXVASW*|M?bkJHL)a> zz58+MttpwVjwSZT^Z%Vq%P$Sfn8?CtxqH&W#)Q?A_QX7nVSs?G*IgUfHg8k4H@>p} U7Ep*0Dt`R`)*FXZlHUaY0Jxh{@&Et; literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 b/bats/helper/testdata/20200113/.dolt/noms/rrbqpqt3l59s17rbva7pjrqhitbe4cc2 new file mode 100644 index 0000000000000000000000000000000000000000..71ffb97f2a2dbd98345c312f2aee5e59103085ac GIT binary patch literal 262 zcmeyu_@R`Ift5)^S3fPMv^YcGJT=KM&Dg>sH8C~C+|bO>*wn-{In~@SF~!o*#4ydA zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#Eotd>GvYI$;gPHAplnJ&YW%sim#yu=*+?%jcq9-g#0VAt@_*}%Ln_Jd0sxNG BV1WPt literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/s69lvejsvg9so3l2nsquavmbai4dmu03 b/bats/helper/testdata/20200113/.dolt/noms/s69lvejsvg9so3l2nsquavmbai4dmu03 new file mode 100644 index 0000000000000000000000000000000000000000..cf28c6f19d27c86cc8f6c3c0f84dec04693c7c37 GIT binary patch literal 934 zcmb7?T}TvB6oBX6`Ez7t88)+CicldRYTeu|f6G{PUwnv6ix9>;Gk4v^`PpXfBKDep zAw-4{7}!G;iV-SQWG@v#4-r^_lmtZMSrH%rCSkPY3I54x;&Xh?cZDN-oGgEXbs`|B!H*V4rhN<7K z-FppkGZIgbYGBAYcCRb0Bo^nELW%M2sgo-$K@?q89NQ*9@G+@n09mAJ;+-=?EnROT=CUziY3C}&-p!2h z63>^XewxU~^#zC&kPmfkZT)XNUViZ3aB_nj@kXMdatjbYP)#v5dFU~gEH1eMa^nKS z!oB;#Nh9l~!d0;(uBnRXQBAK@qcMzQ)hMDLs;SY`h^As)tO#Co4o7xfzE!taJ-^GWa8LPl6~ zFe3OL$;Y4G-Lo+kUKb{&m-|aV*R)46`{jM^Vaw??dS*AY)3evFmo%1Wyr6L{f1L8$ rG8zgtKA&uQ^O&EkYZz|ryV^fzd=u4PTEo$xi=A4({pwMf_W9Tk_ZTf% literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/srlc19tj78ldn4hbb8duso90i1vugc59 b/bats/helper/testdata/20200113/.dolt/noms/srlc19tj78ldn4hbb8duso90i1vugc59 new file mode 100644 index 0000000000000000000000000000000000000000..e094d57e4c6139808844968770ae1b9ec5f90e60 GIT binary patch literal 249 zcmX@k_@R`IfrUv!S3fPMv^YcG%se&8D9Omg#Mn5++}tqP#3IEa%^)$&+{8T9*vQh5 zU6X%8k)5I3^mW$PEOz}*aM#<_-pRtmBwUo5R;-_qnwV0opPZkUmXn!W!mhvPThB*k zuGtsF&j04Hjs54CtsTR{$|ML<%d1n7n^;_uTEu?3&3+lzWYd**8W?jn1>U>bG4HQC z3k#D7tJajvJfMQS#2o$PqSVBaRQB%2skf$Nx;mEFAJ6}HHZ8w2EMp=I}tD005-sT&w^9 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa b/bats/helper/testdata/20200113/.dolt/noms/tmie2h7f80pblg0ojfk0v50qu8s97mpa new file mode 100644 index 0000000000000000000000000000000000000000..ede082b09c7ee8ddfec490b61f2e30a2f144ff62 GIT binary patch literal 309 zcmZQ#VPKrS)j!_y0VkVter|4N2{TJ>YDpp|0|R?OVo_>dNihcl18Z4gPH8H8LvT)F z!QD2sI~-CUJuc5X^f#81hk;S={;j(%ADr137@0J5_0w`ni!=01j13G8j4h3mOcTwL zl2VLJ%uS3;4U!B^O^i}f4NTM6HTfqL*%``BUuS*IV%Pr!cfDQhoh(fI9!IN6CUEkk z!|$vXvwz<)jv~F)$qa7$^1nOY{ QVi1_|f9s7yD#`Bx01H-UlK=n! literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/u62g6ma6evirqjb11i0up0p1hppb50ou b/bats/helper/testdata/20200113/.dolt/noms/u62g6ma6evirqjb11i0up0p1hppb50ou new file mode 100644 index 0000000000000000000000000000000000000000..ca0a5d5761261a4f1209f18936be5c3b703295d0 GIT binary patch literal 284 zcmeyu_@R`Ift5)^S3fPMv^YaQ$-*cx$-=_i%)%ti*xV?^+|U>bG4HQC z3k#EotX554YI$;gPHAo)yPSQH<=l@q|Fir#ytvrEUoovzaT@~!ys^HYqTnJb YtyR)6zZ59M2o?YGf9s7yD#`Bx0EMe*g8%>k literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/noms/ug6l7o53ntp50f252u65cj96om411v14 b/bats/helper/testdata/20200113/.dolt/noms/ug6l7o53ntp50f252u65cj96om411v14 new file mode 100644 index 0000000000000000000000000000000000000000..50fc9117c9874d15a578b21b5457111e0b7f199d GIT binary patch literal 926 zcma#uz{bEN#3aDL&m_bqu#J_8B_**WQQ(@G2qOan1K-tkXYa|s@lE*uUtpt(z*PZO zEd~}&Efvn<{M^)%jLf`rS$&IhOW99+4uGim((T&Quf5;_=-ncMX%u7eeO2nSx#0~)ecC2AbS@%9N0nrWR!}* z10;J=&{oip1?00BTs~uDXJq7IV&Y6;eG`+PT+F_#?e)|$i5R7ofwmQA)1H6W)3idn z=q7^#6EL=zm;~54|J`5!BDWh1PCW7sUl>1>vN5nSY3S;w<&+j@=o=cD8z)($Sr{al znHeM-Ct9YNrCKH%nV1_}CR-$%Td-^LPbji8l$*ZJ`kKYA{|WATyV^Thn3#ltkzcHz zk(!uNtPhODw4BW35_bJP-+DeWbIraWcK$bqZR|hCZ0#5pRwhA^T3(%s+{EIN)FSrN zZT8E!CY!Fj)4-UsDe&Iaj(LCGSy-4vWVICXQp+L9rA(J$3NTTm7Ud=8=qDGYCYGeK zcRx8YTN=HrvVR_HKZ`$K7mDOY&ohmXXTz*=S+s&mWbwE8V SKnw)TU;l5taY!ZkT>t>DRW^M9 literal 0 HcmV?d00001 diff --git a/bats/helper/testdata/20200113/.dolt/repo_state.json b/bats/helper/testdata/20200113/.dolt/repo_state.json new file mode 100644 index 00000000000..793216b5e22 --- /dev/null +++ b/bats/helper/testdata/20200113/.dolt/repo_state.json @@ -0,0 +1,8 @@ +{ + "head": "refs/heads/master", + "staged": "hlgmnafjvlg8curcjc14dok7k1h3mqci", + "working": "hlgmnafjvlg8curcjc14dok7k1h3mqci", + "merge": null, + "remotes": null, + "branches": null +} \ No newline at end of file diff --git a/bats/helper/testdata/20200113/README.md b/bats/helper/testdata/20200113/README.md new file mode 100644 index 00000000000..113afd10d36 --- /dev/null +++ b/bats/helper/testdata/20200113/README.md @@ -0,0 +1,75 @@ +## Overview + +This is test data that captures a repository on January 13, 2020. This may be used to verify that any serialization/deserialization changes are compatible with people's pre-existing data. + +# Branch master + +## Schema + +``` +CREATE TABLE `abc` ( + `pk` BIGINT NOT NULL COMMENT 'tag:0', + `a` LONGTEXT COMMENT 'tag:694', + `b` DATETIME COMMENT 'tag:2902', + PRIMARY KEY (`pk`) +); +``` + +## Data + +``` ++----+------+---------------------------+ +| pk | a | b | ++----+------+---------------------------+ +| 1 | data | 2020-01-13 20:45:18.53558 | ++----+------+---------------------------+ +``` + +# Branch conflict + +## Schema + +``` +CREATE TABLE `abc` ( + `pk` BIGINT NOT NULL COMMENT 'tag:0', + `a` LONGTEXT COMMENT 'tag:694', + `b` DATETIME COMMENT 'tag:2902', + PRIMARY KEY (`pk`) +); +``` + +## Data + +``` ++----+-----------+---------------------------+ +| pk | a | b | ++----+-----------+---------------------------+ +| 1 | data | 2020-01-13 20:45:18.53558 | +| 2 | something | 2020-01-14 20:48:37.13061 | ++----+-----------+---------------------------+ +``` + +# Branch newcolumn + +## Schema + +``` +CREATE TABLE `abc` ( + `pk` BIGINT NOT NULL COMMENT 'tag:0', + `a` LONGTEXT COMMENT 'tag:694', + `b` DATETIME COMMENT 'tag:2902', + `c` BIGINT UNSIGNED COMMENT 'tag:4657', + PRIMARY KEY (`pk`) +); +``` + +## Data + +``` ++----+-----------+---------------------------+---------+ +| pk | a | b | c | ++----+-----------+---------------------------+---------+ +| 1 | data | 2020-01-13 20:45:18.53558 | 2133 | +| 2 | something | 2020-01-13 20:48:37.13061 | 1132020 | ++----+-----------+---------------------------+---------+ +``` From 5667f122e86fa48c9f8a36302b52f1a99736ba52 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Wed, 26 Feb 2020 10:13:11 -0800 Subject: [PATCH 17/19] added table/schema export/import tests --- bats/compatibility/test_files/bats/compatibility.bats | 8 ++++++++ bats/compatibility/test_files/setup_repo.sh | 2 ++ 2 files changed, 10 insertions(+) diff --git a/bats/compatibility/test_files/bats/compatibility.bats b/bats/compatibility/test_files/bats/compatibility.bats index e34fded83c4..6410cfe2abd 100755 --- a/bats/compatibility/test_files/bats/compatibility.bats +++ b/bats/compatibility/test_files/bats/compatibility.bats @@ -147,4 +147,12 @@ clear [[ "${lines[5]}" =~ "| 4 | data | 1.1 | 0 | |" ]] || false dolt checkout master +} + +@test "dolt table import" { + run dolt table import -c -s abc_schema.json abc2 abc.csv + [ "$status" -eq 0 ] + [[ "$output" =~ "Import completed successfully." ]] || false + + dolt sql -q 'drop table abc2' } \ No newline at end of file diff --git a/bats/compatibility/test_files/setup_repo.sh b/bats/compatibility/test_files/setup_repo.sh index 95d5b7ee676..6660192d8ff 100755 --- a/bats/compatibility/test_files/setup_repo.sh +++ b/bats/compatibility/test_files/setup_repo.sh @@ -41,6 +41,8 @@ dolt add . dolt commit -m "made changes to other" dolt checkout master +dolt table export abc abc.csv +dolt schema export abc abc_schema.json # add info to the log echo From 959ab9ee2d54085e4dafd3736cd33774b9492796 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Wed, 26 Feb 2020 10:14:14 -0800 Subject: [PATCH 18/19] updated readme --- bats/compatibility/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bats/compatibility/README.md b/bats/compatibility/README.md index 57949114f81..4de34a299b4 100644 --- a/bats/compatibility/README.md +++ b/bats/compatibility/README.md @@ -18,6 +18,6 @@ and the repositories created with those versions. The BATS tests used to verify compatibility are inherently fragile. Our primary integration tests in `/dolt/bats/` setup and tear down their environment for each test. Because the tests rely on creating a repo with one version of Dolt and running BATS tests with a different version, -we cannot isolate their environment without building Dolt twice per test. +we cannot isolate their environment without building Dolt twice per test or setting up a different Dolt repo per test. The initial version of these tests does all write operations in the `setup_repo.sh` script, and limits state modifications within the BATS test to `dolt checkout` branch changes. Take care when editing the BATS tests to follow this pattern. \ No newline at end of file From 34b1960d1081a133ec6846f2966fe992b5ec27b6 Mon Sep 17 00:00:00 2001 From: Andy Arthur Date: Thu, 27 Feb 2020 11:29:46 -0800 Subject: [PATCH 19/19] PR feedback --- bats/compatibility/runner.sh | 10 +++++----- .../schema/encoding/schema_marshaling.go | 7 +++++-- .../schema/encoding/schema_marshaling_test.go | 19 ++++++++++++++++--- 3 files changed, 26 insertions(+), 10 deletions(-) diff --git a/bats/compatibility/runner.sh b/bats/compatibility/runner.sh index e9dfdbef2c9..8df2b9ae3fe 100755 --- a/bats/compatibility/runner.sh +++ b/bats/compatibility/runner.sh @@ -1,10 +1,5 @@ #!/bin/bash -if [[ $(git diff --stat) != '' ]]; then - echo "cannot run compatibility tests with git working changes" - exit -fi - function build_dolt() { pushd "$dolt_dir" > /dev/null || exit git checkout "$1" > /dev/null @@ -31,6 +26,11 @@ function run_bats_tests() { popd > /dev/null || exit } +# ensure that we have a clean working change set before we begin +if [[ $(git diff --stat) != '' ]]; then + echo "cannot run compatibility tests with git working changes" + exit +fi # copy all the test files to take them out of source control # when we checkout different Dolt releases we don't want to diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling.go b/go/libraries/doltcore/schema/encoding/schema_marshaling.go index b31cfbb48c7..0c8ad2a9af0 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling.go @@ -27,7 +27,7 @@ import ( // Correct Marshalling & Unmarshalling is essential to compatibility across Dolt versions // any changes to the fields of Schema or other persisted objects must be append only, no -// fields can ever be removed without break compatibility. +// fields can ever be removed without breaking compatibility. // // the marshalling annotations of new fields must have the "omitempty" option to allow newer // versions of Dolt to read objects serialized by older Dolt versions where the field did not @@ -46,6 +46,8 @@ type encodedColumn struct { TypeInfo encodedTypeInfo `noms:"typeinfo,omitempty" json:"typeinfo,omitempty"` Constraints []encodedConstraint `noms:"col_constraints" json:"col_constraints"` + + // NB: all new fields must have the 'omitempty' annotation. See comment above } func encodeAllColConstraints(constraints []schema.ColConstraint) []encodedConstraint { @@ -80,7 +82,8 @@ func encodeColumn(col schema.Column) encodedColumn { col.KindString(), col.IsPartOfPK, encodeTypeInfo(col.TypeInfo), - encodeAllColConstraints(col.Constraints)} + encodeAllColConstraints(col.Constraints), + } } func (nfd encodedColumn) decodeColumn() (schema.Column, error) { diff --git a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go index 22b8deca9e9..a3d232bb504 100644 --- a/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go +++ b/go/libraries/doltcore/schema/encoding/schema_marshaling_test.go @@ -74,7 +74,7 @@ func TestNomsMarshalling(t *testing.T) { validated, err := validateUnmarshaledNomsValue(context.Background(), types.Format_7_18, val) if err != nil { - t.Fatal("Failed compatibility test") + t.Fatal("Failed compatibility test. Schema could not be unmarshalled with mirror type") } if !reflect.DeepEqual(tSchema, validated) { @@ -186,9 +186,22 @@ func validateUnmarshaledNomsValue(ctx context.Context, nbf *types.NomsBinFormat, return sd.decodeSchema() } +func TestMirroredTypes(t *testing.T) { + realType := reflect.ValueOf(&encodedColumn{}).Elem() + mirrorType := reflect.ValueOf(&testEncodedColumn{}).Elem() + require.Equal(t, mirrorType.NumField(), realType.NumField()) + + // TODO: create reflection tests to ensure that: + // - no fields in testEncodeColumn have the 'omitempty' annotation + // - no legacy fields in encodeColumn have the 'omitempty' annotation (with whitelist) + // - all new fields in encodeColumn have the 'omitempty' annotation +} + // testEncodedColumn is a mirror type of encodedColumn that helps ensure compatibility between Dolt versions -// fields in this test struct should be added WITHOUT the "omitempty" annotation in order to guarentee that -// all fields are being always being written when encodedColumn is serialized. +// +// Fields in this test struct should be added WITHOUT the "omitempty" annotation in order to guarantee that +// all fields in encodeColumn are always being written when encodedColumn is serialized. +// See the comment above type encodeColumn. type testEncodedColumn struct { Tag uint64 `noms:"tag" json:"tag"`