Esempio n. 1
0
 public void ReloadTypes()
 {
     using (var conn = new NpgsqlConnection(ConnectionString))
     {
         conn.Open();
         Assert.That(ExecuteScalar("SELECT EXISTS (SELECT * FROM pg_type WHERE typname='reload_types_enum')"), Is.False);
         ExecuteNonQuery("CREATE TYPE pg_temp.reload_types_enum AS ENUM ('First', 'Second')");
         conn.ReloadTypes();
         conn.RegisterEnum<ReloadTypesEnum>("reload_types_enum");
     }
 }
Esempio n. 2
0
 public void ReadUnmappedEnumsAsString()
 {
     using (var conn = new NpgsqlConnection(ConnectionString))
     {
         conn.Open();
         ExecuteNonQuery("CREATE TYPE pg_temp.mood AS ENUM ('Sad', 'Ok', 'Happy')", conn);
         conn.ReloadTypes();
         using (var cmd = new NpgsqlCommand("SELECT 'Sad'::MOOD, ARRAY['Ok', 'Happy']::MOOD[]", conn))
         using (var reader = cmd.ExecuteReader())
         {
             reader.Read();
             Assert.That(reader[0], Is.EqualTo("Sad"));
             Assert.That(reader[1], Is.EqualTo(new[] { "Ok", "Happy" }));
         }
     }
 }
Esempio n. 3
0
 public void ReadUnmappedEnumsAsString()
 {
     using (var conn = new NpgsqlConnection(ConnectionString))
     {
         conn.Open();
         conn.ExecuteNonQuery("CREATE TYPE pg_temp.mood7 AS ENUM ('Sad', 'Ok', 'Happy')");
         conn.ReloadTypes();
         using (var cmd = new NpgsqlCommand("SELECT 'Sad'::MOOD7, ARRAY['Ok', 'Happy']::MOOD7[]", conn))
         using (var reader = cmd.ExecuteReader())
         {
             reader.Read();
             Assert.That(reader[0], Is.EqualTo("Sad"));
             Assert.That(reader.GetDataTypeName(0), Does.StartWith("pg_temp").And.EndsWith("mood7"));
             Assert.That(reader[1], Is.EqualTo(new[] { "Ok", "Happy" }));
         }
     }
 }