public void ResolveItem() { //Arrange using (Db database = new Db { new Sitecore.FakeDb.DbItem("TestItem") }) { var config = new SitecoreTypeConfiguration(); config.ItemUriConfig = new SitecoreInfoConfiguration(); config.ItemUriConfig.PropertyInfo = typeof(StubClass).GetProperty("ItemUri"); string path = "/sitecore/content/TestItem"; var expected = database.GetItem(path); var instance = new StubClass(); instance.ItemUri = new ItemUri(expected.ID, expected.Language, expected.Version, expected.Database); //Act var result = config.ResolveItem(instance, database.Database); //Assert Assert.AreEqual(expected.ID, result.ID); Assert.AreEqual(expected.Version, result.Version); Assert.AreEqual(expected.Language, result.Language); } }
public void ResolveItem() { //Arrange var config = new SitecoreTypeConfiguration(); config.ItemUriConfig = new SitecoreInfoConfiguration(); config.ItemUriConfig.PropertyInfo = typeof(StubClass).GetProperty("ItemUri"); //TODO get a proper items string path = "/sitecore/content/Tests/DataMappers/SitecoreItemMapper/Target"; var database = Factory.GetDatabase("master"); var expected = database.GetItem(path); var instance = new StubClass(); instance.ItemUri = new ItemUri(expected.ID, expected.Language, expected.Version, expected.Database); //Act var result = config.ResolveItem(instance, database); //Assert Assert.AreEqual(expected.ID, result.ID); Assert.AreEqual(expected.Version, result.Version); Assert.AreEqual(expected.Language, result.Language); }
public void MapCmsToProperty_DoesNotAlterObject() { //Assign var fieldValue = "hello world"; var propertyValue = "goodbye world"; var item = Database.GetItem("/sitecore/content/Tests/DataMappers/SitecoreIgnoreMapper/Target"); var field = item.Fields["Field"]; var mapper = new SitecoreIgnoreMapper(); var config = new SitecoreIgnoreMapper(); using (new ItemEditing(item, true)) { field.Value = fieldValue; } var stub = new StubClass(); stub.Field = propertyValue; var context = new SitecoreDataMappingContext(stub, item, null); //Act mapper.MapCmsToProperty(context); //Assert Assert.AreEqual(stub.Field, propertyValue); }
public void To_Equal() { Expect(156231561).To.Equal(156231561); Expect(@"I'm a string!").To.Equal(@"I'm a string!"); var testValue = new StubClass(); Expect(testValue).To.Equal(testValue); }
public void CanValidate() { var stub = new StubClass {Description = "test"}; try { Engine.Validate(stub); } catch (ValidationEngineException ex) { Assert.That(ex.Errors.Count(), Is.EqualTo(3)); } }
public void BindValue_When_invalid_string_is_passed_Then_throws_exception() { var stubClass = new StubClass { Property = new Date(2015, 1, 3) }; var stubClassType = typeof(StubClass); var datePropertyInfo = stubClassType.GetProperty("Property"); var binder = new DateValueBinder(stubClass, datePropertyInfo); var updatedValue = "asdsdf"; Assert.Throws<ParameterBindingException>(() => binder.BindValue(updatedValue)); }
public void ReferenceTypes() { var testValue = new StubClass(); var testState = new AssertionState<StubClass>(() => testValue){ IsNegated = true }; var exPass = Record.Exception(() => _subject.Assert(testState, typeof(NotStubClass))); var exFail = Record.Exception(() => _subject.Assert(testState, typeof(StubClass))); Assert.Null(exPass); Assert.NotNull(exFail); }
public void BindValue_When_null_is_passed_and_original_value_is_null_Then_leaves_property_value_as_null() { var stubClass = new StubClass(); var stubClassType = typeof(StubClass); var stringPropertyInfo = stubClassType.GetProperty("Property"); var binder = new DateValueBinder(stubClass, stringPropertyInfo); binder.BindValue(null); Assert.Null(stubClass.Property); }
public void BindValue_When_value_is_passed_and_original_value_is_null_Then_sets_property_value() { var stubClass = new StubClass(); var stubClassType = typeof(StubClass); var stringPropertyInfo = stubClassType.GetProperty("Property"); var binder = new StringValueBinder(stubClass, stringPropertyInfo); var someValue = "Some Value"; binder.BindValue(someValue); Assert.Equal(someValue, stubClass.Property); }
public void BindValue_When_value_is_passed_and_original_value_is_not_empty_Then_updates_property_value() { var stubClass = new StubClass { Property = new Date(2015, 1, 3) }; var stubClassType = typeof(StubClass); var datePropertyInfo = stubClassType.GetProperty("Property"); var binder = new DateValueBinder(stubClass, datePropertyInfo); var updatedValue = "2015-10-09"; binder.BindValue(updatedValue); Assert.Equal(new Date(2015, 10, 9), stubClass.Property); }
public void BindValue_When_value_is_passed_and_original_value_is_not_empty_Then_updates_property_value() { var stubClass = new StubClass { Property = "test" }; var stubClassType = typeof(StubClass); var stringPropertyInfo = stubClassType.GetProperty("Property"); var binder = new StringValueBinder(stubClass, stringPropertyInfo); var updatedValue = "Some Value"; binder.BindValue(updatedValue); Assert.Equal(updatedValue, stubClass.Property); }
public void BindValue_When_value_is_passed_and_original_value_is_null_Then_sets_property_value() { var stubClass = new StubClass(); var stubClassType = typeof(StubClass); var datePropertyInfo = stubClassType.GetProperty("Property"); var binder = new DateValueBinder(stubClass, datePropertyInfo); var someValue = "2015-10-09"; binder.BindValue(someValue); Assert.Equal(new Date(2015, 10, 9), stubClass.Property); }
public void Model_returns_from_context_item_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); StubClass expected = new StubClass(); testHarness.SitecoreContext.GetCurrentItem<StubClass>().Returns(expected); // Act var result = testHarness.GlassUserControl.Model; // Assert result.Should().Be(expected); }
public void MapToProperty_MapsItemToProperty() { //Arrange var database = Sitecore.Configuration.Factory.GetDatabase("master"); var item = database.GetItem("/sitecore/content/Tests/DataMappers/SitecoreItemMapper/Target"); var mapper = new SitecoreItemMapper(); var obj = new StubClass(); var mappingContext = new SitecoreDataMappingContext(obj, item, null); //Act var result = mapper.MapToProperty(mappingContext); //Assign Assert.AreEqual(item, result); }
public void GetLayoutItem_returns_data_source_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); testHarness.RenderingContext.GetDataSource().Returns("fred"); StubClass expected = new StubClass(); testHarness.SitecoreContext.GetItem <StubClass>("fred").Returns(expected); // Act var result = testHarness.GlassUserControl.GetLayoutItem <StubClass>(); // Assert result.Should().Be(expected); }
public void Model_returns_from_data_source_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); StubClass expected = new StubClass(); string dataSourceId = Guid.NewGuid().ToString(); testHarness.RenderingContext.GetDataSource().Returns(dataSourceId); testHarness.SitecoreContext.GetItem <StubClass>(dataSourceId, testHarness.GlassUserControl.IsLazy, testHarness.GlassUserControl.InferType).Returns(expected); // Act var result = testHarness.GlassUserControl.Model; // Assert result.Should().Be(expected); }
public void BindValue_When_value_is_passed_and_original_value_is_null_Then_sets_property_value() { var stubClass = new StubClass(); var stubClassType = typeof(StubClass); var arrayPropertyInfo = stubClassType.GetProperty("Property"); var binder = new StringArrayValueBinder(stubClass, arrayPropertyInfo); var someValue = "values;1;3;"; binder.BindValue(someValue); Assert.Equal(4, stubClass.Property.Length); foreach (var str in someValue.Split(';')) { Assert.Contains(str, stubClass.Property); } }
public void Model_returns_from_data_source_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); StubClass expected = new StubClass(); string dataSourceId = Guid.NewGuid().ToString(); testHarness.RenderingContext.GetDataSource().Returns(dataSourceId); testHarness.SitecoreContext.GetItem<StubClass>(dataSourceId, testHarness.GlassUserControl.IsLazy, testHarness.GlassUserControl.InferType).Returns(expected); // Act var result = testHarness.GlassUserControl.Model; // Assert result.Should().Be(expected); }
public void GlassController_can_set_and_get_rendering_parameters() { // Arrange StubClass classToReturn = new StubClass(); var testHarness = new GlassControllerTestHarness(); const string renderingParameters = "p=1&r=2"; testHarness.RenderingContextWrapper.GetRenderingParameters().Returns(renderingParameters); testHarness.GlassHtml.GetRenderingParameters <StubClass>(renderingParameters).Returns(classToReturn); // Act var result = testHarness.GlassController.GetRenderingParameters <StubClass>(); // Assert result.Should().Be(classToReturn); }
public void BindValue_When_value_is_passed_and_original_value_is_not_empty_Then_updates_property_value() { var stubClass = new StubClass { Property = new[] { "test", "second" } }; var stubClassType = typeof(StubClass); var arrayPropertyInfo = stubClassType.GetProperty("Property"); var binder = new StringArrayValueBinder(stubClass, arrayPropertyInfo); var updatedValue = "values;1;3;"; binder.BindValue(updatedValue); Assert.Equal(4, stubClass.Property.Length); foreach (var str in updatedValue.Split(';')) { Assert.Contains(str, stubClass.Property); } }
public void MapPropertyToCms_DoesNotAlterObject() { //Assign string targetPath = "/sitecore/content/target"; var templateId = ID.NewID; using (Db database = new Db { new DbTemplate(templateId) { new DbField("Field") { Type = "text" } }, new Sitecore.FakeDb.DbItem("Target", ID.NewID, templateId) { { "Field", "" } } }) { var fieldValue = "hello world"; var propertyValue = "goodbye world"; var item = database.GetItem(targetPath); var field = item.Fields["Field"]; var mapper = new SitecoreIgnoreMapper(); var config = new SitecoreIgnoreMapper(); using (new ItemEditing(item, true)) { field.Value = fieldValue; } var stub = new StubClass(); stub.Field = propertyValue; var context = new SitecoreDataMappingContext(stub, item, null); //Act mapper.MapPropertyToCms(context); //Assert Assert.AreEqual(fieldValue, item.Fields["Field"].Value); } }
public void ReadJson_DeserializesPrivateFields() { // Arrange int testField1Value = 1; string testField2Value = "testField2Value"; bool? testField3Value = true; string json = $"{{\"_stubField1\":{testField1Value},\"_stubField2\":\"{testField2Value}\",\"_stubField3\":{testField3Value.ToString().ToLowerInvariant()}}}"; // Act StubClass result = JsonConvert.DeserializeObject <StubClass>(json, new PrivateFieldsJsonConverter()); // Assert Assert.Equal(testField1Value, result.StubProperty1); Assert.Equal(testField2Value, result.StubProperty2); Assert.Equal(testField3Value, result.StubProperty3); }
public void WriteXML(XmlTextWriter Writer) { var _with1 = Writer; foreach (ListViewItem lvi in ListView1.Items) { TemplateParameters tp = (TemplateParameters)lvi.Tag; _with1.WriteAttributeString(Prefix + tp.StorageKey, lvi.Checked.ToString()); } _with1.WriteAttributeString(Prefix + conStubClassParm, StubClass.ToString()); if (AutoStubCheckBox.Enabled) { _with1.WriteAttributeString(Prefix + conAutoStubParm, AutoStub.ToString()); } }
public void RenderingParameters_returns_from_glass_html_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); const string renderingParameters = "rendering"; testHarness.RenderingContext.GetRenderingParameters().Returns(renderingParameters); StubClass expected = new StubClass(); testHarness.GlassHtml.GetRenderingParameters <StubClass>(renderingParameters).Returns(expected); // Act var result = testHarness.GlassUserControl.GetRenderingParameters <StubClass>(); // Assert result.Should().Be(expected); }
public void GlassController_can_set_and_get_datasource() { // Arrange ID expectedId = new ID(Guid.NewGuid()); StubClass classToReturn = new StubClass(); var testHarness = new GlassControllerTestHarness(); testHarness.RenderingContextWrapper.HasDataSource.Returns(true); testHarness.RenderingContextWrapper.GetDataSource().Returns(expectedId.ToString()); testHarness.SitecoreContext.GetItem <StubClass>(expectedId.ToString()).Returns(classToReturn); // Act var result = testHarness.GlassController.GetDataSourceItem <StubClass>(); // Assert result.Should().Be(classToReturn); }
public void GlassController_can_set_and_get_context() { // Arrange StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.SitecoreContext.GetCurrentItem <StubClass>().Returns(classToReturn); // Act var result1 = testHarness.GlassController.Context; var result2 = testHarness.GlassController.Context; // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.SitecoreContext.Received(1).GetCurrentItem <StubClass>(); }
public void Editable_returns_from_glass_html_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); const string expected = "field value"; StubClass expectedStub = new StubClass(); testHarness.SitecoreContext.GetCurrentItem<StubClass>().Returns(expectedStub); Expression<Func<StubClass, object>> fieldExpression = x => x.Field; testHarness.GlassHtml.Editable(testHarness.GlassUserControl.Model, fieldExpression, null as object).Returns(expected); // Act var result = testHarness.GlassUserControl.Editable(fieldExpression); // Assert result.Should().Be(expected); }
public void ShouldSetResultToErrorWithErrorMessage() { //Arange int called = 0; IResult result = new Result(); Action act = () => { throw new Exception(); }; this.saver.Setup(x => x.Save()).Callback(() => { called++; }); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act sut.SaveChange(act, ref result); //Assert Assert.AreEqual(called, 0); Assert.AreEqual(result.ResulType, ResultType.Error); Assert.AreEqual(result.ErrorMsg, Constants.ErorsDict[ResultType.Error]); }
public void GlassController_can_set_and_get_context() { // Arrange StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.MvcContext.GetContextItem <StubClass>(Arg.Any <GetKnownOptions>()).Returns(classToReturn); // Act var result1 = testHarness.GlassController.GetContext <StubClass>(); var result2 = testHarness.GlassController.GetContext <StubClass>(); // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.MvcContext.Received(2).GetContextItem <StubClass>(Arg.Any <GetKnownOptions>()); }
public void GlassController_can_set_and_get_layout_item_from_context() { // Arrange StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.RenderingContextWrapper.HasDataSource.Returns(false); testHarness.SitecoreContext.GetCurrentItem <StubClass>().Returns(classToReturn); // Act var result1 = testHarness.GlassController.Layout; var result2 = testHarness.GlassController.Layout; // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.SitecoreContext.Received(1).GetCurrentItem <StubClass>(); }
public void IoC_CanUpdateInstanceLikeSingleton() { var instance_1 = new StubClass { StubProperty = "property of instance 1" }; var instance_2 = new StubClass { StubProperty = "property of instance 2" }; IoC.Container.AddOrUpdate(instance_1); IoC.Container.AddOrUpdate(instance_2); Assert.IsNotNull(IoC.Container); Assert.IsTrue(IoC.Container.Instances.ContainsKey(typeof(StubClass))); Assert.ReferenceEquals(instance_2, IoC.Container.Get <StubClass>()); Assert.AreEqual("property of instance 2", IoC.Container.Get <StubClass>().StubProperty); Assert.AreEqual(1, IoC.Container.Instances.Count); }
public void GlassController_can_set_and_get_layout_item_from_datasource() { // Arrange ID expectedId = new ID(Guid.NewGuid()); StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.MvcContext.HasDataSource.Returns(true); testHarness.MvcContext.GetDataSourceItem <StubClass>(Arg.Any <GetKnownOptions>()).Returns(classToReturn); // Act var result1 = testHarness.GlassController.GetLayout <StubClass>(); var result2 = testHarness.GlassController.GetLayout <StubClass>(); // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.MvcContext.Received(2).GetDataSourceItem <StubClass>(Arg.Any <GetKnownOptions>()); }
public void Editable_returns_from_glass_html_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); const string expected = "field value"; StubClass expectedStub = new StubClass(); testHarness.SitecoreContext.GetCurrentItem <StubClass>().Returns(expectedStub); Expression <Func <StubClass, object> > fieldExpression = x => x.Field; testHarness.GlassHtml.Editable(testHarness.GlassUserControl.Model, fieldExpression, null as object).Returns(expected); // Act var result = testHarness.GlassUserControl.Editable(fieldExpression); // Assert Assert.AreEqual(expected, result); }
public void RenderImage_returns_from_glass_html_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); const string expected = "superimage"; StubClass expectedStub = new StubClass(); testHarness.SitecoreContext.GetCurrentItem <StubClass>().Returns(expectedStub); Expression <Func <StubClass, object> > fieldExpression = x => x.GlassImage; testHarness.GlassHtml.RenderImage(testHarness.GlassUserControl.Model, fieldExpression, null, false, false).Returns(expected); // Act var result = testHarness.GlassUserControl.RenderImage(fieldExpression); // Assert result.Should().Be(expected); }
public void MapCmsToProperty_ValueFromCms_WritesToProperty() { //Assign var obj = new StubClass(); var config = Substitute.For <AbstractPropertyConfiguration>(); var dataMapper = new StubMapper(); AbstractDataMappingContext context = Substitute.For <AbstractDataMappingContext>(obj); dataMapper.Setup(new DataMapperResolverArgs(null, config)); config.PropertyInfo = typeof(StubClass).GetProperties().First(x => x.Name == "AProperty"); //Act dataMapper.MapCmsToProperty(context); //Assert Assert.AreEqual("Hello world", obj.AProperty); Assert.AreEqual(context, dataMapper.MappingContext); }
public void ReadJson_IfJsonIsMissingAFieldStoresItAndContinuesDeserializing() { // Arrange string testField2Value = "testField2Value"; bool? testField3Value = true; string json = $"{{\"_stubField2\":\"{testField2Value}\",\"_stubField3\":{testField3Value.ToString().ToLowerInvariant()}}}"; PrivateFieldsJsonConverter converter = new PrivateFieldsJsonConverter(); // Act StubClass result = JsonConvert.DeserializeObject <StubClass>(json, converter); // Assert Assert.Equal(1, converter.MissingFields.Count); Assert.Equal("_stubField1", converter.MissingFields[0].Name); Assert.Equal(testField2Value, result.StubProperty2); Assert.Equal(testField3Value, result.StubProperty3); }
public void ShouldCallSaveSaveIfEverythingOkAndNotChangeResult() { //Arange int called = 0; int calledInner = 0; IResult result = new Result(); Action act = () => { calledInner++; }; this.saver.Setup(x => x.Save()).Callback(() => { called++; }); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act sut.SaveChange(act, ref result); //Assert Assert.AreEqual(called, 1); Assert.AreEqual(calledInner, 1); Assert.AreEqual(result.ResulType, ResultType.Success); }
public void GlassController_can_set_and_get_datasource() { // Arrange ID expectedId = new ID(Guid.NewGuid()); StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.RenderingContextWrapper.HasDataSource.Returns(true); testHarness.RenderingContextWrapper.GetDataSource().Returns(expectedId.ToString()); testHarness.SitecoreContext.GetItem<StubClass>(expectedId.ToString()).Returns(classToReturn); // Act var result1 = testHarness.GlassController.DataSource; var result2 = testHarness.GlassController.DataSource; // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.SitecoreContext.Received(1).GetItem<StubClass>(expectedId.ToString()); }
public void MapCmsToProperty_ValueFromCms_WritesToProperty() { //Assign var obj = new StubClass(); var config = Substitute.For<AbstractPropertyConfiguration>(); var dataMapper = new StubMapper(); AbstractDataMappingContext context = Substitute.For<AbstractDataMappingContext>(obj); dataMapper.Setup(new DataMapperResolverArgs(null, config)); config.PropertyInfo = typeof(StubClass).GetProperties().First(x => x.Name == "AProperty"); //Act dataMapper.MapCmsToProperty(context); //Assert Assert.AreEqual("Hello world", obj.AProperty); Assert.AreEqual(context, dataMapper.MappingContext); }
public void ShouldReturnErrorAndNullMovieIfMovieDoesntExist() { //Arange IResult result = new Result(); Movies existingMovie = new Movies() { Name = "TestUser", Id = Guid.NewGuid() }; this.movies.Setup(x => x.GetById(It.IsAny <Guid>())).Returns((Movies)null); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act var resultMovie = sut.GetMovie(existingMovie.Id, ref result); //Assert Assert.AreEqual(resultMovie, null); Assert.AreEqual(result.ResulType, ResultType.Error); }
public void Editable_returns_from_glass_html_with_standard_output_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); const string expected = "field value"; StubClass expectedStub = new StubClass(); testHarness.SitecoreContext.GetCurrentItem<StubClass>().Returns(expectedStub); Expression<Func<StubClass, object>> fieldExpression = x => x.Field; Expression<Func<StubClass, string>> defaultExpression = x => "fred"; testHarness.GlassHtml.Editable(testHarness.GlassUserControl.Model, fieldExpression, defaultExpression, null).Returns(expected); // Act var result = testHarness.GlassUserControl.Editable(fieldExpression, defaultExpression); // Assert Assert.AreEqual(expected, result); }
public void ShouldReturnExistingMovieIfThereIsOneWithSameUserNameInBase() { //Arange IResult result = new Result(); Movies existingMovie = new Movies() { Name = "TestUser", Id = Guid.NewGuid() }; this.movies.Setup(x => x.GetById(It.IsAny <Guid>())).Returns(existingMovie); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act var resultMovie = sut.GetMovie(existingMovie.Id, ref result); //Assert Assert.AreEqual(resultMovie.Id, existingMovie.Id); Assert.AreEqual(result.ResulType, ResultType.Success); }
public void Editable_returns_from_glass_html_with_standard_output_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); const string expected = "field value"; StubClass expectedStub = new StubClass(); testHarness.SitecoreContext.GetCurrentItem <StubClass>().Returns(expectedStub); Expression <Func <StubClass, object> > fieldExpression = x => x.Field; Expression <Func <StubClass, string> > defaultExpression = x => "fred"; testHarness.GlassHtml.Editable(testHarness.GlassUserControl.Model, fieldExpression, defaultExpression, null).Returns(expected); // Act var result = testHarness.GlassUserControl.Editable(fieldExpression, defaultExpression); // Assert result.Should().Be(expected); }
public void ShouldAddNewElemetnsToInitialIfDoesntAlreadyExist() { //Arange ICollection <Genres> initial = new List <Genres>(); ICollection <Genres> newColl = new List <Genres>(); Genres genreToTest = new Genres() { Name = "TestGenre" }; newColl.Add(genreToTest); this.genresRepo.Setup(x => x.AllNotDeleted()).Returns(new List <Genres>().AsQueryable()); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act sut.UpdateGenresCollection(initial, newColl); //Assert Assert.IsTrue(initial.Contains(genreToTest)); }
public void GlassController_can_set_and_get_layout_item_from_datasource() { // Arrange ID expectedId = new ID(Guid.NewGuid()); StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.RenderingContextWrapper.HasDataSource.Returns(true); testHarness.RenderingContextWrapper.GetDataSource().Returns(expectedId.ToString()); testHarness.SitecoreContext.GetItem <StubClass>(expectedId.ToString()).Returns(classToReturn); // Act var result1 = testHarness.GlassController.Layout; var result2 = testHarness.GlassController.Layout; // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.SitecoreContext.Received(1).GetItem <StubClass>(expectedId.ToString()); }
public void ShouldRemoveDeletedGenresFromInitial() { //Arange ICollection <Genres> initial = new List <Genres>(); Genres genreToDel = new Genres() { Name = "toDelete", Id = Guid.NewGuid() }; initial.Add(genreToDel); ICollection <Genres> newColl = new List <Genres>(); Genres genreToTest = new Genres() { Name = "TestGenre", Id = Guid.NewGuid() }; newColl.Add(genreToTest); ICollection <Genres> exist = new List <Genres>(); Genres existGenre = new Genres() { Name = "TestGenre", Id = Guid.NewGuid() }; exist.Add(existGenre); this.genresRepo.Setup(x => x.AllNotDeleted()).Returns(exist.AsQueryable()); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act sut.UpdateGenresCollection(initial, newColl); //Assert Assert.IsFalse(initial.Select(x => x.Id).Contains(genreToDel.Id)); }
public void ShouldReturnExistingUserIfThereIsOneWithSameUserNameInBase() { //Arange IResult result = new Result(); ICollection <Users> existing = new List <Users>(); Users existingUser = new Users() { UserName = "******", Id = Guid.NewGuid().ToString() }; existing.Add(existingUser); this.userRepo.Setup(x => x.All()).Returns(existing.AsQueryable()); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act var resultUser = sut.GetCurrentUser("TestUser", ref result); //Assert Assert.AreEqual(resultUser.Id, existingUser.Id); Assert.AreEqual(result.ResulType, ResultType.Success); }
public void ShouldReturnErrorResultandNullForUserIfNoSuchUserExists() { //Arange IResult result = new Result(); ICollection <Users> existing = new List <Users>(); Users existingUser = new Users() { UserName = "******", Id = Guid.NewGuid().ToString() }; existing.Add(existingUser); this.userRepo.Setup(x => x.All()).Returns(existing.AsQueryable()); StubClass sut = new StubClass(movies.Object, genresRepo.Object, commentsRepo.Object, userRepo.Object, likesRepo.Object, dislikesRepo.Object, saver.Object); //Act var resultUser = sut.GetCurrentUser("Gosho", ref result); //Assert Assert.AreEqual(resultUser, null); Assert.AreEqual(result.ResulType, ResultType.DoesntExists); }
public void MapToProperty_MapsItemToProperty() { //Arrange using (Db database = new Db { new Sitecore.FakeDb.DbItem("TestItem") }) { var item = database.GetItem("/sitecore/content/TestItem"); var mapper = new SitecoreItemMapper(); var obj = new StubClass(); var mappingContext = new SitecoreDataMappingContext(obj, item, null); //Act var result = mapper.MapToProperty(mappingContext); //Assign Assert.AreEqual(item, result); } }
public void WriteJson_SerializesPrivateFields() { // Arrange int testField1Value = 1; string testField2Value = "testField2Value"; bool? testField3Value = true; StubClass stubClass = new StubClass { StubProperty1 = testField1Value, StubProperty2 = testField2Value, StubProperty3 = testField3Value }; // Act string result = JsonConvert.SerializeObject(stubClass, new PrivateFieldsJsonConverter()); // Assert Assert.Equal(3, Regex.Matches(Regex.Escape(result), "_stubField").Count); Assert.Contains($"\"_stubField1\":{testField1Value}", result); Assert.Contains($"\"_stubField2\":\"{testField2Value}\"", result); Assert.Contains($"\"_stubField3\":{testField3Value.ToString().ToLowerInvariant()}", result); }
public void MapCmsToProperty_DoesNotAlterObject() { //Assign string targetPath = "/sitecore/content/target"; var templateId = ID.NewID; using (Db database = new Db { new DbTemplate(templateId) { new DbField("Field") { Type = "text" } }, new Sitecore.FakeDb.DbItem("Target", ID.NewID, templateId) { {"Field", ""} } }) { var fieldValue = "hello world"; var propertyValue = "goodbye world"; var item = database.GetItem(targetPath); var field = item.Fields["Field"]; var mapper = new SitecoreIgnoreMapper(); var config = new SitecoreIgnoreMapper(); using (new ItemEditing(item, true)) { field.Value = fieldValue; } var stub = new StubClass(); stub.Field = propertyValue; var context = new SitecoreDataMappingContext(stub, item, null); //Act mapper.MapCmsToProperty(context); //Assert Assert.AreEqual(stub.Field, propertyValue); } }
public void Create_CreatesANewItem() { //Assign string parentPath = "/sitecore/content/Tests/SitecoreService/Create"; string childPath = "/sitecore/content/Tests/SitecoreService/Create/newChild"; var db = Sitecore.Configuration.Factory.GetDatabase("master"); var context = Context.Create(Utilities.CreateStandardResolver()); context.Load(new SitecoreAttributeConfigurationLoader("Glass.Mapper.Sc.Integration")); var service = new SitecoreService(db); using (new SecurityDisabler()) { var parentItem = db.GetItem(parentPath); parentItem.DeleteChildren(); } var parent = service.GetItem<StubClass>(parentPath); var child = new StubClass(); child.Name = "newChild"; //Act using (new SecurityDisabler()) { service.Create(parent, child); } //Assert var newItem = db.GetItem(childPath); using (new SecurityDisabler()) { newItem.Delete(); } Assert.AreEqual(child.Name,newItem.Name); Assert.AreEqual(child.Id, newItem.ID.Guid); }
public void Model_can_be_set_successfully() { // Arrange var testHarness = new GlassUserControlTestHarness(); StubClass expected = new StubClass(); testHarness.GlassUserControl.Model = expected; // Act var result = testHarness.GlassUserControl.Model; // Assert result.Should().Be(expected); }
public void GlassController_can_set_and_get_context() { // Arrange StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.SitecoreContext.GetCurrentItem<StubClass>().Returns(classToReturn); // Act var result1 = testHarness.GlassController.Context; var result2 = testHarness.GlassController.Context; // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.SitecoreContext.Received(1).GetCurrentItem<StubClass>(); }
public void Create_CreatesANewItem_WithSpecificId() { //Assign using (Db database = new Db { new Sitecore.FakeDb.DbItem("Target") }) { var context = Context.Create(Utilities.CreateStandardResolver()); context.Load(new OnDemandLoader<SitecoreTypeConfiguration>(typeof(StubClass))); var service = new SitecoreService(database.Database); string parentPath = "/sitecore/content/Target"; string childPath = "/sitecore/content/Target/newChild"; var id = Guid.NewGuid(); using (new SecurityDisabler()) { var parentItem = database.GetItem(parentPath); parentItem.DeleteChildren(); } var parent = service.GetItem<StubClass>(parentPath); var child = new StubClass(); child.Id = id; child.Name = "newChild"; //Act using (new SecurityDisabler()) { service.Create(parent, child); } //Assert var newItem = database.GetItem(childPath); using (new SecurityDisabler()) { newItem.Delete(); } Assert.AreEqual(child.Name, newItem.Name); Assert.AreEqual(id, newItem.ID.Guid); } }
public void GlassController_can_set_and_get_layout_item_from_context() { // Arrange StubClass classToReturn = new StubClass(); var testHarness = new SingleTypedGlassControllerTestHarness(); testHarness.RenderingContextWrapper.HasDataSource.Returns(false); testHarness.SitecoreContext.GetCurrentItem<StubClass>().Returns(classToReturn); // Act var result1 = testHarness.GlassController.Layout; var result2 = testHarness.GlassController.Layout; // Assert result1.Should().Be(classToReturn); result2.Should().BeSameAs(result1); testHarness.SitecoreContext.Received(1).GetCurrentItem<StubClass>(); }
public void GetPropertyFuncAndSetPropertyAction_ReadWriteUsingActionAndFunction_ReturnsString( [Values( "GetPublicSetPublic", "GetProtectedSetProtected", "GetPrivateSetPrivate", "GetPublicSetProtected", "GetPublicSetPrivate", "GetPublicNoSet" )] string propertyName, [Values( "some value", "some value", "some value", "some value", "some value", null )] string expected ) { //Assign PropertyInfo info = typeof(StubClass).GetProperty(propertyName, Utilities.Flags); var getFunc = Utilities.GetPropertyFunc(info); var setActi = Utilities.SetPropertyAction(info); var stub = new StubClass(); //Act setActi(stub, expected); var result = getFunc(stub) as string; //Assert Assert.AreEqual(expected, result); }
public void ValidateMethodCallPropertyOnClass_IsSuccessful() { ValidationCatalog.AddSpecification<StubClass>(validates => validates.Check( x=> x.GetCollection()).Required().CountGreaterThan(1)); var c = new StubClass(); Assert.DoesNotThrow( () => ValidationCatalog.Validate(c) ); }