Exemplo n.º 1
0
		public void ViewState ()
		{
			SqlPoker sql = new SqlPoker ();

			sql.CacheKeyDependency = "hi";
			sql.CancelSelectOnNullParameter = false;
			sql.ConflictDetection = ConflictOptions.CompareAllValues;
			sql.DeleteCommandType = SqlDataSourceCommandType.StoredProcedure;
			sql.InsertCommandType = SqlDataSourceCommandType.StoredProcedure;
			sql.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;
			sql.UpdateCommandType = SqlDataSourceCommandType.StoredProcedure;
			sql.OldValuesParameterFormatString = "{1}";
			sql.SqlCacheDependency = "hi";
			sql.SortParameterName = "hi";
			sql.CacheDuration = 1;
			sql.CacheExpirationPolicy = DataSourceCacheExpiry.Sliding;
			sql.EnableCaching = true;
			sql.DataSourceMode = SqlDataSourceMode.DataReader;
			sql.DeleteCommand = "DELETE foo";
			sql.InsertCommand = "INSERT foo";
			sql.SelectCommand = "SELECT foo";
			sql.UpdateCommand = "UPDATE foo";
			sql.FilterExpression = "hi";

			Assert.AreEqual ("hi", sql.CacheKeyDependency, "A1");
			Assert.IsFalse (sql.CancelSelectOnNullParameter, "A2");
			Assert.AreEqual (ConflictOptions.CompareAllValues, sql.ConflictDetection, "A3");
			Assert.AreEqual (SqlDataSourceCommandType.StoredProcedure, sql.DeleteCommandType, "A4");
			Assert.AreEqual (SqlDataSourceCommandType.StoredProcedure, sql.InsertCommandType, "A5");
			Assert.AreEqual (SqlDataSourceCommandType.StoredProcedure, sql.SelectCommandType, "A6");
			Assert.AreEqual (SqlDataSourceCommandType.StoredProcedure, sql.UpdateCommandType, "A7");
			Assert.AreEqual ("{1}", sql.OldValuesParameterFormatString, "A8");
			Assert.AreEqual ("hi", sql.SqlCacheDependency, "A9");
			Assert.AreEqual ("hi", sql.SortParameterName, "A10");
			Assert.AreEqual (1, sql.CacheDuration, "A11");
			Assert.AreEqual (DataSourceCacheExpiry.Sliding, sql.CacheExpirationPolicy, "A12");
			Assert.IsTrue (sql.EnableCaching, "A13");
			Assert.AreEqual (SqlDataSourceMode.DataReader, sql.DataSourceMode, "A16");
			Assert.AreEqual ("DELETE foo", sql.DeleteCommand, "A17");
			Assert.AreEqual ("INSERT foo", sql.InsertCommand, "A20");
			Assert.AreEqual ("SELECT foo", sql.SelectCommand, "A22");
			Assert.AreEqual ("UPDATE foo", sql.UpdateCommand, "A24");
			Assert.AreEqual ("hi", sql.FilterExpression, "A26");

			object state = sql.SaveToViewState ();
			Assert.IsNull (state, "ViewState is null");

			sql = new SqlPoker ();
			sql.LoadFromViewState (state);

			Assert.AreEqual ("", sql.CacheKeyDependency, "B1");
			Assert.IsTrue (sql.CancelSelectOnNullParameter, "B2");
			Assert.AreEqual (ConflictOptions.OverwriteChanges, sql.ConflictDetection, "B3");
			Assert.AreEqual (SqlDataSourceCommandType.Text, sql.DeleteCommandType, "B4");
			Assert.AreEqual (SqlDataSourceCommandType.Text, sql.InsertCommandType, "B5");
			Assert.AreEqual (SqlDataSourceCommandType.Text, sql.SelectCommandType, "B6");
			Assert.AreEqual (SqlDataSourceCommandType.Text, sql.UpdateCommandType, "B7");
			Assert.AreEqual ("{0}", sql.OldValuesParameterFormatString, "B8");
			Assert.AreEqual ("", sql.SqlCacheDependency, "B9");
			Assert.AreEqual ("", sql.SortParameterName, "B10");
			Assert.AreEqual (0, sql.CacheDuration, "B11");
			Assert.AreEqual (DataSourceCacheExpiry.Absolute, sql.CacheExpirationPolicy, "B12");
			Assert.IsFalse (sql.EnableCaching, "B13");
			Assert.AreEqual (SqlDataSourceMode.DataSet, sql.DataSourceMode, "B16");
			Assert.AreEqual ("", sql.DeleteCommand, "B17");
			Assert.IsNotNull (sql.DeleteParameters, "B18");
			Assert.AreEqual (0, sql.DeleteParameters.Count, "B18.1");
			Assert.IsNotNull (sql.FilterParameters, "B19");
			Assert.AreEqual (0, sql.FilterParameters.Count, "B19.1");
			Assert.AreEqual ("", sql.InsertCommand, "B20");
			Assert.IsNotNull (sql.InsertParameters, "B21");
			Assert.AreEqual (0, sql.InsertParameters.Count, "B21.1");
			Assert.AreEqual ("", sql.SelectCommand, "B22");
			Assert.IsNotNull (sql.SelectParameters, "B23");
			Assert.AreEqual (0, sql.SelectParameters.Count, "B23.1");
			Assert.AreEqual ("", sql.UpdateCommand, "B24");
			Assert.IsNotNull (sql.UpdateParameters, "B25");
			Assert.AreEqual (0, sql.UpdateParameters.Count, "B25.1");
			Assert.AreEqual ("", sql.FilterExpression, "B26");
		}