public void VersionedStringBuilder_IsInitializedToSpecifiedString() { var builder = new VersionedStringBuilder("Hello, world!"); TheResultingValue(builder.Version).ShouldBe(0); TheResultingString(builder.ToString()).ShouldBe("Hello, world!"); }
public void VersionedStringSource_ProducesCorrectString_WhenToStringIsCalled_AndSourceIsStringBuilder() { var data = new VersionedStringBuilder("Hello, world!"); var source = new VersionedStringSource(data); TheResultingString(source.ToString()).ShouldBe("Hello, world!"); }
public void VersionedStringSource_ExplicitlyConvertsToStringBuilder_WhenSourceIsStringBuilder() { var data = new VersionedStringBuilder("Hello, world!"); var source = new VersionedStringSource(data); TheResultingObject((VersionedStringBuilder)source) .ShouldSatisfyTheCondition(x => x.ToString() == "Hello, world!"); }
public void VersionedStringSource_CannotConvertToString_WhenSourceIsNotString() { var data = new VersionedStringBuilder("Hello, world!"); var source = new VersionedStringSource(data); Assert.That(() => TheResultingString((String)source).ShouldBe("Hello, world!"), Throws.TypeOf <InvalidCastException>()); }
public void VersionedStringBuilder_VersionIsNotIncremented_WhenAppendVersionedStringBuilderIsCalled_AndValueIsNull() { var builder = new VersionedStringBuilder("Hello, world!"); builder.Append((VersionedStringBuilder)null); TheResultingValue(builder.Version).ShouldBe(0); TheResultingString(builder.ToString()).ShouldBe("Hello, world!"); }
public void VersionedStringBuilder_VersionIsIncremented_WhenClearIsCalled() { var builder = new VersionedStringBuilder("Hello, world!"); builder.Clear(); TheResultingValue(builder.Version).ShouldBe(1); TheResultingString(builder.ToString()).ShouldBe(String.Empty); }
public void VersionedStringSource_IsValid_WhenStringBuilderSourceIsSpecified() { var data = new VersionedStringBuilder("Hello, world!"); var source = new VersionedStringSource(data); TheResultingValue(source.IsValid).ShouldBe(true); TheResultingValue(source.IsSourcedFromString).ShouldBe(false); TheResultingValue(source.IsSourcedFromStringBuilder).ShouldBe(true); }
public void VersionedStringBuilder_VersionIsIncremented_WhenAppendVersionedStringBuilderIsCalled() { var builder = new VersionedStringBuilder("Hello, world!"); var value = new VersionedStringBuilder(" Goodbye, world!"); builder.Append(value); TheResultingValue(builder.Version).ShouldBe(1); TheResultingString(builder.ToString()).ShouldBe("Hello, world! Goodbye, world!"); }
public void VersionedStringBuilder_VersionIsIncremented_WhenInsertCharIsCalled() { var builder = new VersionedStringBuilder("Hello, world!"); var value = '!'; builder.Insert(12, value); TheResultingValue(builder.Version).ShouldBe(1); TheResultingString(builder.ToString()).ShouldBe("Hello, world!!"); }
public void VersionedStringBuilder_VersionIsNotIncremented_WhenInsertVersionedStringSourceIsCalled_WithInvalidSource() { var builder = new VersionedStringBuilder("Hello, world!"); var value = new VersionedStringSource(); builder.Insert(5, value); TheResultingValue(builder.Version).ShouldBe(0); TheResultingString(builder.ToString()).ShouldBe("Hello, world!"); }
public void VersionedStringBuilder_VersionIsIncremented_WhenInsertVersionedStringBuilderIsCalled() { var builder = new VersionedStringBuilder("Hello, world!"); var value = new VersionedStringBuilder(" and goodbye"); builder.Insert(5, value); TheResultingValue(builder.Version).ShouldBe(1); TheResultingString(builder.ToString()).ShouldBe("Hello and goodbye, world!"); }