From 0e5d5d4a315343db5ff7a226ba8df97dd8842924 Mon Sep 17 00:00:00 2001 From: Paul Campbell Date: Fri, 15 Jun 2018 18:41:09 +0100 Subject: [PATCH] When putting an existing key/value pair then the original GitDbBranch finds the original value --- .../kemitix/gitdb/impl/GitDBTransactionImpl.java | 5 +++-- src/test/java/net/kemitix/gitdb/test/GitDBTest.java | 13 +++++++++++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/kemitix/gitdb/impl/GitDBTransactionImpl.java b/src/main/java/net/kemitix/gitdb/impl/GitDBTransactionImpl.java index d468567..28687d9 100644 --- a/src/main/java/net/kemitix/gitdb/impl/GitDBTransactionImpl.java +++ b/src/main/java/net/kemitix/gitdb/impl/GitDBTransactionImpl.java @@ -25,6 +25,7 @@ import com.github.zafarkhaja.semver.Version; import net.kemitix.gitdb.GitDBBranch; import net.kemitix.gitdb.GitDBTransaction; +import java.io.IOException; import java.util.Optional; /** @@ -48,8 +49,8 @@ class GitDBTransactionImpl implements GitDBTransaction { } @Override - public GitDBBranch put(String key, String value) { - return null; + public GitDBBranch put(String key, String value) throws IOException { + return branch.put(key, value); } @Override diff --git a/src/test/java/net/kemitix/gitdb/test/GitDBTest.java b/src/test/java/net/kemitix/gitdb/test/GitDBTest.java index 79f7a76..10399bf 100644 --- a/src/test/java/net/kemitix/gitdb/test/GitDBTest.java +++ b/src/test/java/net/kemitix/gitdb/test/GitDBTest.java @@ -381,6 +381,19 @@ class GitDBTest implements WithAssertions { } // When putting an existing key/value pair then the original GitDbBranch finds the original value + @Test + void putValue_whenTransaction_thenUpdatedBranchFinds() throws IOException { + //given + final GitDBBranch originalBranch = gitDBBranch(); + final GitDBTransaction transaction = originalBranch.transaction(); + final String key = stringSupplier.get(); + final String value = stringSupplier.get(); + //when + final GitDBBranch updatedBranch = transaction.put(key, value); + //then + assertThat(updatedBranch.get(key)).contains(value); + } + // When removing a key then the original GitDbBRanch still finds it // Given a GitDbTransaction handle with a added, updated and removed keys