|
1 | 1 | require 'cases/helper_sqlserver' |
2 | | -require 'models/sqlserver/sql_server_natural_pk_data' |
3 | | -require 'models/sqlserver/sql_server_natural_pk_data_schema' |
4 | 2 |
|
5 | 3 | class SchemaTestSQLServer < ActiveRecord::TestCase |
6 | 4 |
|
7 | | - setup do |
8 | | - @connection = ActiveRecord::Base.connection |
9 | | - end |
10 | | - |
11 | | - context 'When table is dbo schema' do |
| 5 | + describe 'When table is dbo schema' do |
12 | 6 |
|
13 | | - should 'find primary key for tables with odd schema' do |
14 | | - assert_equal 'legacy_id', @connection.primary_key('natural_pk_data') |
15 | | - assert SSTestNaturalPkData.columns_hash['legacy_id'].primary |
| 7 | + it 'find primary key for tables with odd schema' do |
| 8 | + connection.primary_key('natural_pk_data').must_equal 'legacy_id' |
16 | 9 | end |
17 | 10 |
|
18 | 11 | end |
19 | 12 |
|
20 | | - context 'When table is in non-dbo schema' do |
| 13 | + describe 'When table is in non-dbo schema' do |
21 | 14 |
|
22 | | - should 'work with #table_exists?' do |
23 | | - assert @connection.table_exists?('test.sql_server_schema_natural_id') |
| 15 | + it 'work with table exists' do |
| 16 | + assert connection.table_exists?('test.sst_schema_natural_id') |
| 17 | + assert connection.table_exists?('[test].[sst_schema_natural_id]') |
24 | 18 | end |
25 | 19 |
|
26 | | - should 'find primary key for tables with odd schema' do |
27 | | - assert_equal 'legacy_id', @connection.primary_key('test.sql_server_schema_natural_id') |
28 | | - assert SqlServerNaturalPkDataSchema.columns_hash['legacy_id'].primary |
| 20 | + it 'find primary key for tables with odd schema' do |
| 21 | + connection.primary_key('test.sst_schema_natural_id').must_equal 'legacy_id' |
29 | 22 | end |
30 | 23 |
|
31 | | - should "have only one identity column" do |
32 | | - columns = @connection.columns("test.sql_server_schema_identity") |
| 24 | + it "have only one identity column" do |
| 25 | + columns = connection.columns("test.sst_schema_identity") |
33 | 26 | assert_equal 2, columns.size |
34 | | - assert_equal 1, columns.select{ |c| c.primary }.size |
| 27 | + assert_equal 1, columns.select{ |c| c.is_identity? }.size |
35 | 28 | end |
36 | 29 |
|
37 | | - should "read only column properties for table in specific schema" do |
38 | | - test_columns = @connection.columns("test.sql_server_schema_columns") |
39 | | - dbo_columns = @connection.columns("dbo.sql_server_schema_columns") |
40 | | - columns = @connection.columns("sql_server_schema_columns") # This returns table from dbo schema |
| 30 | + it "read only column properties for table in specific schema" do |
| 31 | + test_columns = connection.columns("test.sst_schema_columns") |
| 32 | + dbo_columns = connection.columns("dbo.sst_schema_columns") |
| 33 | + columns = connection.columns("sst_schema_columns") # This returns table from dbo schema |
41 | 34 | assert_equal 7, test_columns.size |
42 | 35 | assert_equal 2, dbo_columns.size |
43 | 36 | assert_equal 2, columns.size |
44 | | - assert_equal 1, test_columns.select{ |c| c.primary }.size |
45 | | - assert_equal 1, dbo_columns.select{ |c| c.primary }.size |
46 | | - assert_equal 1, columns.select{ |c| c.primary }.size |
| 37 | + assert_equal 1, test_columns.select{ |c| c.is_identity? }.size |
| 38 | + assert_equal 1, dbo_columns.select{ |c| c.is_identity? }.size |
| 39 | + assert_equal 1, columns.select{ |c| c.is_identity? }.size |
47 | 40 | end |
48 | 41 |
|
49 | | - should "return correct varchar and nvarchar column limit (length) when table is in non dbo schema" do |
50 | | - columns = @connection.columns("test.sql_server_schema_columns") |
| 42 | + it "return correct varchar and nvarchar column limit length when table is in non dbo schema" do |
| 43 | + columns = connection.columns("test.sst_schema_columns") |
51 | 44 | assert_equal 255, columns.find {|c| c.name == 'name'}.limit |
52 | 45 | assert_equal 1000, columns.find {|c| c.name == 'description'}.limit |
53 | 46 | assert_equal 255, columns.find {|c| c.name == 'n_name'}.limit |
|
0 commit comments