Inheritance: Sitecore.Data.Engines.DataCommands.RemoveVersionCommand, IDataEngineCommand
    public void ShouldNotRemoveVersionIfNoVersionFoundInSpecificLanguage(RemoveVersionCommand sut, Item item)
    {
      // arrange
      var dbitem = new DbItem("item") { Fields = { new DbField("Title") } };
      sut.DataStorage.GetFakeItem(item.ID).Returns(dbitem);

      sut.Initialize(item);

      // act
      var result = (bool)ReflectionUtil.CallMethod(sut, "DoExecute");

      // assert
      result.Should().BeFalse();
    }
    public void ShouldRemoveVersionFromFakeDbFields(RemoveVersionCommand sut, Item item)
    {
      // arrange
      var dbitem = new DbItem("item") { Fields = { new DbField("Title") { { "en", "Hello!" } } } };
      sut.DataStorage.GetFakeItem(item.ID).Returns(dbitem);

      sut.Initialize(item);

      // act
      var result = (bool)ReflectionUtil.CallMethod(sut, "DoExecute");

      // assert
      result.Should().BeTrue();
      dbitem.Fields.Single().Values["en"].Values.Should().BeEmpty();
    }
    public void ShouldDecreaseFakeItemVersionCount(RemoveVersionCommand sut, Item item, DbItem dbItem)
    {
      // arrange
      dbItem.AddVersion("en");
      dbItem.AddVersion("en");
      sut.DataStorage.GetFakeItem(item.ID).Returns(dbItem);

      sut.Initialize(item);

      // act
      var result = (bool)ReflectionUtil.CallMethod(sut, "DoExecute");

      // assert
      result.Should().BeTrue();
      dbItem.GetVersionCount("en").Should().Be(1);
    }