public static function dtest_all_db_fields_have_correct_type_in_specification()
 {
     foreach (Database_DatabaseHelper::get_tables() as $db_table) {
         $specified_table = Database_TableSpecificationHelper::get_table($db_table->get_name());
         foreach ($db_table->get_fields() as $db_field) {
             if ($db_field->get_type() != $specified_table->get_field_type($db_field->get_name())) {
                 return FALSE;
             }
         }
     }
     return TRUE;
 }
 public static function dtest_field_types_can_be_saved()
 {
     $table_specification_directory_name = self::get_table_specification_directory_name() . DIRECTORY_SEPARATOR . 'test_1';
     Database_TableSpecificationHelper::save_table_structure_in_directory('hc_database_test_1', $table_specification_directory_name);
     $specified_table = Database_TableSpecificationHelper::save_table_structure_in_directory($table_specification_directory_name);
     $field_types = self::get_field_types();
     foreach (array_keys($field_types) as $key) {
         if ($specified_table->get_field_type($key) != $field_types[$key]) {
             return TRUE;
         }
     }
     return TRUE;
 }
 public function do_actions()
 {
     Database_TableSpecificationHelper::sync_database_with_table_specification();
 }