public void SqlScope_AddChildScopeTest() { var sut = new SqlScope(); var a = sut.CreateChildScope(); var b = a.CreateChildScope(); var c = b.CreateChildScope(); var d = b.CreateChildScope(); a.Add(SqlName.Parse("a", ObjectLevel.Local), "1"); b.Add(SqlName.Parse("b", ObjectLevel.Local), "2"); c.Add(SqlName.Parse("c", ObjectLevel.Local), "3"); d.Add(SqlName.Parse("d", ObjectLevel.Local), "4"); Assert.Equal("1", a.ResolveObject(SqlName.Parse("a", ObjectLevel.Local), null)); Assert.Null(a.ResolveObject(SqlName.Parse("b", ObjectLevel.Local), null)); Assert.Null(a.ResolveObject(SqlName.Parse("c", ObjectLevel.Local), null)); Assert.Null(a.ResolveObject(SqlName.Parse("d", ObjectLevel.Local), null)); Assert.Equal("1", b.ResolveObject(SqlName.Parse("a", ObjectLevel.Local), null)); Assert.Equal("2", b.ResolveObject(SqlName.Parse("b", ObjectLevel.Local), null)); Assert.Null(b.ResolveObject(SqlName.Parse("c", ObjectLevel.Local), null)); Assert.Null(b.ResolveObject(SqlName.Parse("d", ObjectLevel.Local), null)); Assert.Equal("1", c.ResolveObject(SqlName.Parse("a", ObjectLevel.Local), null)); Assert.Equal("2", c.ResolveObject(SqlName.Parse("b", ObjectLevel.Local), null)); Assert.Equal("3", c.ResolveObject(SqlName.Parse("c", ObjectLevel.Local), null)); Assert.Null(c.ResolveObject(SqlName.Parse("d", ObjectLevel.Local), null)); Assert.Equal("1", d.ResolveObject(SqlName.Parse("a", ObjectLevel.Local), null)); Assert.Equal("2", d.ResolveObject(SqlName.Parse("b", ObjectLevel.Local), null)); Assert.Null(d.ResolveObject(SqlName.Parse("c", ObjectLevel.Local), null)); Assert.Equal("4", d.ResolveObject(SqlName.Parse("d", ObjectLevel.Local), null)); }
public void SqlScope_ResolveTest() { var sut = new SqlScope(null); var a = sut.CreateChildScope(); sut.Add(SqlName.Parse("a", ObjectLevel.Unknown), "42"); Assert.Equal("42", a.ResolveObject(SqlName.Parse("a", ObjectLevel.Local), null)); }
/// <summary> /// Initializes a new instance of the <see cref="ModelSqlTable"/> class. /// </summary> /// <param name="scopeSchema">the scope of the owner - schema</param> public ModelSqlTable(SqlScope scopeSchema) { this._Scope = (scopeSchema?.CreateChildScope(this)) ?? (new SqlScope(null, this)); }
/// <summary> /// Initializes a new instance of the <see cref="ModelSqlDatabase"/> class. /// </summary> /// <param name="scope">the scope</param> public ModelSqlDatabase(SqlScope scope) : this() { this._Scope = (scope?.CreateChildScope(this)) ?? (new SqlScope(null, this)); }
/// <summary> /// Initializes a new instance of the <see cref="ModelSqlSchema"/> class. /// </summary> /// <param name="scopeDatbase">the database scope.</param> public ModelSqlSchema(SqlScope scopeDatbase) : this() { this._Scope = (scopeDatbase?.CreateChildScope(this)) ?? (new SqlScope(null, this)); }