EntityGenerate_Test.cs 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using Vitorm.Sql;
  3. namespace Vitorm.MsTest.Sqlite
  4. {
  5. [TestClass]
  6. public partial class EntityGenerate_Test
  7. {
  8. [TestMethod]
  9. public void Test()
  10. {
  11. // #1 init
  12. var entityNamespace = "Vitorm.MsTest.Sqlite";
  13. var guid = Guid.NewGuid().ToString();
  14. var filePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"{guid}.sqlite.db");
  15. var connectionString = $"data source={filePath}";
  16. using var dbContext = new SqlDbContext();
  17. dbContext.UseSqlite(connectionString);
  18. dbContext.Execute(@"
  19. DROP TABLE if exists GeneratedUser;
  20. CREATE TABLE GeneratedUser(id integer NOT NULL PRIMARY KEY, name text DEFAULT NULL);
  21. Insert into GeneratedUser(id,name) values(1,'u146');
  22. ");
  23. // #2 test
  24. var dbSet = dbContext.GenerateDbSet(entityNamespace: entityNamespace, tableName: "GeneratedUser");
  25. var entityType = dbSet.entityDescriptor.entityType;
  26. // GetEntity
  27. dynamic user = dbSet.Get(1);
  28. string name = user.name;
  29. Assert.AreEqual("u146", name);
  30. BaseTest.TestDbSet(dbSet);
  31. }
  32. }
  33. }