public void Test2_Fail() { var dataSet = new CremaDataSet(); var dataType = dataSet.Types.Add(); dataType.AddMember("None", 0); dataType.AddMember("A", 1); var dataTable = dataSet.Tables.Add(); dataTable.Columns.AddKey("column1", dataType); var dataRow = dataTable.NewRow(); dataRow[0] = "None"; dataTable.Rows.Add(dataRow); dataSet.AcceptChanges(); dataType.View[0].Row.BeginEdit(); dataType.View[0].Row[CremaSchema.Name] = "none"; dataType.View[0].Row[CremaSchema.Value] = 1; dataType.View[0].Row.EndEdit(); Assert.AreEqual(dataRow[0], dataType.View[0].Row[CremaSchema.Name]); Assert.AreEqual(dataRow[0], dataType.Members[0].Name); }
public void Test3() { var dataSet = new CremaDataSet(); var dataType = dataSet.Types.Add(); dataType.AddMember("None", 0); dataType.AddMember("A", 0); var dataTable = dataSet.Tables.Add(); dataTable.Columns.AddKey("column1"); var dataRow = dataTable.NewRow(); dataRow[0] = "None"; dataTable.Rows.Add(dataRow); var dataRow2 = dataTable.NewRow(); dataRow2[0] = "A"; dataTable.Rows.Add(dataRow2); dataSet.AcceptChanges(); dataTable.Columns[0].CremaType = dataType; }
public void ModificationInfoAfterDelete() { var dataSet = new CremaDataSet(); var dataType = dataSet.Types.Add(); dataType.AddMember("None", 0); dataType.AddMember("A", 1); dataType.AcceptChanges(); var dataTable = dataSet.Tables.Add(); dataTable.Columns.Add("column1", dataType); var dataRow = dataTable.NewRow(); dataRow[0] = "None"; dataTable.Rows.Add(dataRow); dataSet.AcceptChanges(); var member = dataType.Members[0]; var modification = dataType.ModificationInfo; Thread.Sleep(1000); member.Delete(); Assert.AreNotEqual(modification, dataType.ModificationInfo); }
public void Test11() { var dataSet = new CremaDataSet(); var dataType = dataSet.Types.Add(); dataType.AddMember("None", 0); dataType.AddMember("A", 1); var dataTable = dataSet.Tables.Add(); dataTable.Columns.AddKey("column1"); var dataRow = dataTable.NewRow(); dataRow[0] = "None"; dataTable.Rows.Add(dataRow); var dataRow2 = dataTable.NewRow(); dataRow2[0] = "A"; dataTable.Rows.Add(dataRow2); var dataTable2 = dataTable.Inherit("Derived1"); dataSet.AcceptChanges(); //dataTable.Columns[0].CremaType = dataType; var template = new CremaTemplate(dataTable); template.Columns[0].DataTypeName = dataType.Path; Assert.AreEqual(dataType, dataTable.Columns[0].CremaType); Assert.AreEqual(dataType, dataTable2.Columns[0].CremaType); }
public void Test10() { var dataSet = new CremaDataSet(); var dataType = dataSet.Types.Add(); dataType.AddMember("None", 0); dataType.AddMember("A", 0); var dataTable = dataSet.Tables.Add(); dataTable.Columns.AddKey("column1"); var dataRow = dataTable.NewRow(); dataRow[0] = "None"; dataTable.Rows.Add(dataRow); var dataRow2 = dataTable.NewRow(); dataRow2[0] = "B"; dataTable.Rows.Add(dataRow2); dataSet.AcceptChanges(); var template = new CremaTemplate(dataTable); template.Columns[0].DataTypeName = dataType.Path; }
public CremaDataTable ReadData(Authentication authentication, CremaDataSet dataSet) { if (this.Parent != null) { throw new InvalidOperationException(Resources.Exception_ChildTableCannotReadIndependently); } var itemName = new ItemName(this.Category.Path, base.Name); if (this.TemplatedParent != null) { dataSet.ReadXmlSchema(this.TemplatedParent.SchemaPath, itemName); } else { dataSet.ReadXmlSchema(this.SchemaPath, itemName); } dataSet.ReadXml(this.XmlPath, itemName); dataSet.AcceptChanges(); var dataTable = dataSet.Tables[base.TableName, this.Category.Path]; var revision = this.Revision; dataTable.UpdateRevision(revision); foreach (var child in dataTable.Childs) { child.UpdateRevision(revision); } return(dataTable); }
public void ReadAll(Authentication authentication, CremaDataSet dataSet) { if (this.Parent != null) { this.Parent.ReadAll(authentication, dataSet); return; } var types = this.GetService(typeof(TypeCollection)) as TypeCollection; var typeFiles = (from Type item in types select item.SchemaPath).ToArray(); var tableFiles = EnumerableUtility.Friends(this, this.DerivedTables).Select(item => item.XmlPath).ToArray(); dataSet.ReadMany(typeFiles, tableFiles); dataSet.AcceptChanges(); }
public CremaDataTable ReadData(Authentication authentication, CremaDataSet dataSet) { if (this.Parent != null) { throw new CremaException("자식테이블은 독립적으로 데이터를 읽어들일 수 없습니다."); } var itemName = new ItemName(this.Category.Path, base.Name); if (this.TemplatedParent != null) { dataSet.ReadXmlSchema(this.TemplatedParent.SchemaPath, itemName); } else { dataSet.ReadXmlSchema(this.SchemaPath, itemName); } dataSet.ReadXml(this.XmlPath, itemName); dataSet.AcceptChanges(); return(dataSet.Tables[base.TableName, this.Category.Path]); }
public void ComplexTest1() { Assert.Inconclusive("관계값을 인덱스로 바꾸면서 오류가 발생하는데 이테스트의 의도가 먼지 기억이 안남"); var dataSet = new CremaDataSet(); var table1 = dataSet.Tables.Add(); var column1 = table1.Columns.AddKey(); var child1 = table1.Childs.Add(); child1.Columns.AddKey(); var row1 = table1.NewRow(); row1[0] = "1"; table1.Rows.Add(row1); var relationID = row1.RelationID; var childCount = 4; for (var i = 0; i < childCount; i++) { var childRow1 = child1.NewRow(row1); childRow1[0] = i.ToString(); child1.Rows.Add(childRow1); } dataSet.AcceptChanges(); dataSet.BeginLoad(); table1.DefaultView[0].BeginEdit(); table1.DefaultView[0][7] = "2"; table1.DefaultView[0][8] = "randomid"; table1.DefaultView[0].EndEdit(); dataSet.EndLoad(); var sss = row1.GetChildRows(child1); Assert.AreEqual(childCount, sss.Length); }