public void TwoDirectDependenciesShouldPrecedeTheirUsage()
{
var lib1 = this._WriteFile("lib1.js", @"
alert('1');
");
var lib2 = this._WriteFile("lib2.js", @"
alert('2');
");
var app = this._WriteFile("app.js", @"
/// <reference path=""lib1.js"" />
/// <reference path=""lib2.js"" />
alert('3');
");
this._AssertOrderingFor(lib1, lib2, app).Expect(lib1, lib2).Expect(app).Complete();
this._AssertOrderingFor(app, lib2, lib1).Expect(lib1, lib2).Expect(app).Complete();
app = this._WriteFile("app.js", @"
/// <reference path=""lib2.js"" />
/// <reference path=""lib1.js"" />
alert('3');
");
this._AssertOrderingFor(lib1, lib2, app).Expect(lib1, lib2).Expect(app).Complete();
this._AssertOrderingFor(app, lib2, lib1).Expect(lib1, lib2).Expect(app).Complete();
}