public void CatSetLength() { var hbm = new HbmMapKey(); var mapper = new MapKeyMapper(hbm); mapper.Length(55); hbm.length.Should().Be("55"); }
public void AfterSetMultiColumnsCantSetSimpleColumn() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)")); mapper.Executing(m => m.Column(cm => cm.Length(50))).Throws <MappingException>(); }
public void WhenSetTypeByICompositeUserTypeThenSetTypeName() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); Assert.That(() => mapper.Type <MyCompoType>(), Throws.Nothing); Assert.That(mapping.Type.name, Does.Contain(nameof(MyCompoType))); }
public void CanSetFormula() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Formula("SomeFormula"); mapping.formula.Should().Be("SomeFormula"); }
public void CatSetColumnByName() { var hbm = new HbmMapKey(); var mapper = new MapKeyMapper(hbm); mapper.Column("pizza"); hbm.column.Should().Be("pizza"); }
public void WhenSetTypeByIUserTypeThenSetTypeName() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Type <MyType>(); mapping.Type.name.Should().Contain("MyType"); }
public void WhenSetTypeByITypeTypeThenSetType() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Type <EnumStringType <MyEnum> >(); mapping.Type.name.Should().Contain(typeof(EnumStringType <MyEnum>).FullName); }
public void SettingColumnOverridesFormula() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Formula("formula"); mapper.Column(cm => cm.Unique(true)); mapping.formula.Should().Be.Null(); }
public void WhenSetTypeByITypeThenSetTypeName() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Type(NHibernateUtil.String); mapping.Type.name.Should().Be.EqualTo("String"); }
public void WhenSetMultiColumnsValuesThenAutoassignColumnNames() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Columns(cm => cm.Length(50), cm => cm.SqlType("VARCHAR(10)")); mapping.Columns.Should().Have.Count.EqualTo(2); mapping.Columns.All(cm => cm.name.Satisfy(n => !string.IsNullOrEmpty(n))); }
public void WhenSetDifferentColumnNameThenSetTheName() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column(cm => cm.Name("pepe")); mapping.Columns.Should().Have.Count.EqualTo(1); mapping.Columns.Single().name.Should().Be("pepe"); }
public void WhenSetFormulaWithNullThenDoNothing() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column("MyColumn"); mapper.Formula(null); mapping.formula.Should().Be.Null(); mapping.column.Should().Not.Be.Null(); }
public void SettingColumnPlainValuesOverridesFormula() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Formula("formula"); mapper.Column("colName"); mapping.formula.Should().Be.Null(); mapping.column.Should().Be("colName"); }
public void SettingFormulaOverridesColumnNodes() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column(cm => cm.SqlType("VARCHAR(80)")); mapper.Formula("formula"); mapping.formula.Should().Be("formula"); mapping.column.Should().Be(null); mapping.Items.Should().Be.Null(); }
public void WhenSetFormulaThenResetColumn() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column("MyColumn"); mapper.Formula("SomeFormula"); mapping.formula.Should().Be("SomeFormula"); mapping.column.Should().Be.Null(); mapping.Items.Should().Be.Null(); }
public void Element(Action <IMapKeyMapper> mapping) { if (mapKeyMapper == null) { var hbm = new HbmMapKey { type = dictionaryKeyType.GetNhTypeName() }; mapKeyMapper = new MapKeyMapper(hbm); } mapping(mapKeyMapper); mapMapping.Item = mapKeyMapper.MapKeyMapping; }
public void WhenSetBasicColumnValuesThroughShortCutThenMergeColumn() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column("pizza"); mapper.Length(50); mapping.Items.Should().Be.Null(); mapping.column.Should().Be("pizza"); mapping.length.Should().Be("50"); }
public void WhenSetBasicColumnValuesThenSetPlainValues() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column(cm => { cm.Length(50); }); mapping.Items.Should().Be.Null(); mapping.length.Should().Be("50"); }
public void CanSetMultipleFormulas() { var mapping = new HbmMapKey(); IMapKeyMapper mapper = new MapKeyMapper(mapping); mapper.Formulas("formula1", "formula2", "formula3"); Assert.That(mapping.formula, Is.Null); Assert.That(mapping.Items, Has.Length.EqualTo(3)); Assert.That( mapping.Items.Cast <HbmFormula>().Select(f => f.Text.Single()), Is.EquivalentTo(new[] { "formula1", "formula2", "formula3" })); }
public void WhenSetColumnValuesThenAddColumnTag() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Column(cm => { cm.SqlType("VARCHAR(50)"); cm.NotNullable(true); }); mapping.Items.Should().Not.Be.Null(); mapping.Columns.Should().Have.Count.EqualTo(1); }
public void BindSimpleValue(HbmMapKey mapKeyMapping, string propertyPath, bool isNullable) { new TypeBinder(value, Mappings).Bind(mapKeyMapping.Type); BindColumnsAndFormulas( mapKeyMapping.ColumnsAndFormulas.ToArray(), isNullable, () => new HbmColumn { name = mappings.NamingStrategy.PropertyToColumnName(propertyPath), length = mapKeyMapping.length }); }
public void WhenSetFormulaWithMultipleLinesThenSetFormulaNode() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); var formula = @"Line1 Line2"; mapper.Formula(formula); mapping.formula.Should().Be.Null(); mapping.Items.FirstOrDefault().Should().Not.Be.Null().And.Be.OfType <HbmFormula>(); var hbmFormula = (HbmFormula)(mapping.Items.First()); hbmFormula.Text.Length.Should().Be(2); hbmFormula.Text[0].Should().Be("Line1"); hbmFormula.Text[1].Should().Be("Line2"); }
public void WhenSetMultiColumnsValuesThenAddColumns() { var mapping = new HbmMapKey(); var mapper = new MapKeyMapper(mapping); mapper.Type <MyType>(); mapper.Columns(cm => { cm.Name("column1"); cm.Length(50); }, cm => { cm.Name("column2"); cm.SqlType("VARCHAR(10)"); }); mapping.Columns.Should().Have.Count.EqualTo(2); }
public void CanSetColumnsAndFormulas() { var mapping = new HbmMapKey(); IMapKeyMapper mapper = new MapKeyMapper(mapping); mapper.ColumnsAndFormulas(x => x.Name("pizza"), x => x.Formula("risotto"), x => x.Name("pasta")); Assert.That(mapping.Items, Has.Length.EqualTo(3)); Assert.That(mapping.Items[0], Is.TypeOf <HbmColumn>(), "first"); Assert.That(mapping.Items[1], Is.TypeOf <HbmFormula>(), "second"); Assert.That(mapping.Items[2], Is.TypeOf <HbmColumn>(), "third"); Assert.That(((HbmColumn)mapping.Items[0]).name, Is.EqualTo("pizza")); Assert.That(((HbmFormula)mapping.Items[1]).Text, Has.Length.EqualTo(1).And.One.EqualTo("risotto")); Assert.That(((HbmColumn)mapping.Items[2]).name, Is.EqualTo("pasta")); Assert.That(mapping.column, Is.Null, "column"); Assert.That(mapping.formula, Is.Null, "formula"); }
public void BindSimpleValue(HbmMapKey mapKeyMapping, string propertyPath, bool isNullable) { new TypeBinder(value, Mappings).Bind(mapKeyMapping.Type); var formulas = mapKeyMapping.Formulas.ToArray(); if (formulas.Length > 0) { BindFormulas(formulas); } else { new ColumnsBinder(value, Mappings).Bind(mapKeyMapping.Columns, isNullable, () => new HbmColumn { name = mappings.NamingStrategy.PropertyToColumnName(propertyPath), length = mapKeyMapping.length }); } }
public MapKeyMapper(HbmMapKey hbmMapKey) { this.hbmMapKey = hbmMapKey; }