public void Test2() { var tfs = new ThreadsFrames(); try { int a = 0; using (var scope0 = tfs.CreateImmutableScope(a)) { string b = "1"; using (var scope1 = tfs.CreateImmutableScope(b)) { } ulong c = 2u; using (var scope2 = tfs.CreateImmutableScope(c)) { throw new TestExpectedException(); } } } catch (TestExpectedException excp) { var frames = tfs.ExtractFrames(); Assert.Equal(2, frames.Count); Assert.Equal(0, frames[0].GetElementaries().OnlyFirst <int>()); Assert.Equal(2u, frames[1].GetElementaries().OnlyFirst <ulong>()); } }
static void Main(string[] args) { var connectionString = args[0]; var logger = new ConsoleLogger(); using (var tfs = new ThreadsFrames()) { //var sf = new ConsoleCollectionSaverFactory( // ); var ftn = new FullTableName("_ss"); var tfnc = new TargetFileNameController( 1, @"_bbin", 500 ); var sf = new SqlServerCollectionSaverFactory( connectionString, ftn, tfnc ); sf.PrepareDatabase(); var r = new SqlServerReader( connectionString, ftn, tfnc ); using (var pq = new PublishQueue( sf, logger )) { var p = new Publisher( pq, tfs ); var iec = new Common.IEC(tfs, p, r); iec.Publisher.PublishedEvent += ( collections, count ) => { var read = iec.Reader.ReadBetween( new DateTime(2000, 1, 1), new DateTime(2030, 1, 1) ); Console.WriteLine(read.Last().Body); }; ProcessMutable(iec); //ProcessImmutable(iec); } } Console.WriteLine("Finished!"); }