/Rhino.Etl.Tests/BaseUserToPeopleTest.cs

http://github.com/ayende/rhino-etl · C# · 78 lines · 74 code · 4 blank · 0 comment · 0 complexity · 3f0ac0406ed7dd6e737747c4e172adf0 MD5 · raw file

  1. using Rhino.Etl.Core.Infrastructure;
  2. namespace Rhino.Etl.Tests
  3. {
  4. using System.Collections.Generic;
  5. using System.Data;
  6. using Aggregation;
  7. using Xunit;
  8. public class BaseUserToPeopleTest : BaseDslTest
  9. {
  10. public BaseUserToPeopleTest()
  11. {
  12. Use.Transaction("test", delegate(IDbCommand cmd)
  13. {
  14. cmd.CommandText =
  15. @"
  16. if object_id('User2Role') is not null
  17. drop table User2Role;
  18. if object_id('Roles') is not null
  19. drop table Roles;
  20. if object_id('Users') is not null
  21. drop table Users;
  22. create table Users ( id int identity primary key, name nvarchar(255) not null, email nvarchar(255) not null, roles nvarchar(255), testMsg nvarchar(255) );
  23. create table Roles( id int identity, name nvarchar(255) );
  24. create table User2Role( userid int, roleid int);
  25. insert into users (name,email) values('ayende rahien', 'ayende@example.org')
  26. insert into users (name,email) values('foo bar', 'fubar@example.org')
  27. insert into users (name,email) values('nice naughty', 'santa@example.org')
  28. insert into users (name,email) values('gold silver', 'dwarf@example.org')
  29. insert into roles values('admin')
  30. insert into roles values('janitor')
  31. insert into roles values('employee')
  32. insert into roles values('customer')
  33. insert into User2Role values(1,1)
  34. insert into User2Role values(1,2)
  35. insert into User2Role values(1,3)
  36. insert into User2Role values(1,4)
  37. insert into User2Role values(2,2)
  38. insert into User2Role values(4,2)
  39. insert into User2Role values(4,3)
  40. if object_id('People') is not null
  41. drop table People;
  42. create table People ( id int identity, userid int not null, firstname nvarchar(255) not null, lastname nvarchar(255) not null, email nvarchar(255) not null);
  43. ";
  44. cmd.ExecuteNonQuery();
  45. });
  46. }
  47. protected static void AssertNames(IList<string[]> names)
  48. {
  49. Assert.Equal("ayende", names[0][0]);
  50. Assert.Equal("rahien", names[0][1]);
  51. Assert.Equal("foo", names[1][0]);
  52. Assert.Equal("bar", names[1][1]);
  53. Assert.Equal("nice", names[2][0]);
  54. Assert.Equal("naughty", names[2][1]);
  55. Assert.Equal("gold", names[3][0]);
  56. Assert.Equal("silver", names[3][1]);
  57. }
  58. protected static void AssertFullNames(IList<string> names)
  59. {
  60. Assert.Equal("ayende rahien", names[0]);
  61. Assert.Equal("foo bar", names[1]);
  62. Assert.Equal("nice naughty", names[2]);
  63. Assert.Equal("gold silver", names[3]);
  64. }
  65. }
  66. }