-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathAttributesExists.sql
76 lines (66 loc) · 3.17 KB
/
AttributesExists.sql
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
-- Unit test for all atributes in each table
EXEC tSQLt.NewTestClass 'AllAttributesExists';
GO
CREATE PROCEDURE AllAttributesExists.[test FactInvoices]
AS
BEGIN
DECLARE @exceptedcout INT = 5000;
DECLARE @invoiceidcount INT; SELECT @invoiceidcount = COUNT(InvoiceID) FROM FactInvoices;
DECLARE @quantitysoldcount INT; SELECT @quantitysoldcount = COUNT(QuantitySold) FROM FactInvoices;
DECLARE @totalamountcount INT; SELECT @totalamountcount = COUNT(TotalAmount) FROM FactInvoices;
DECLARE @discountamountcount INT; SELECT @discountamountcount = COUNT(DiscountAmount) FROM FactInvoices;
DECLARE @netamountcount INT; SELECT @netamountcount = COUNT(NetAmount) FROM FactInvoices;
EXEC tSQLt.AssertEquals @exceptedcout, @invoiceidcount;
EXEC tSQLt.AssertEquals @exceptedcout, @quantitysoldcount;
EXEC tSQLt.AssertEquals @exceptedcout, @totalamountcount;
EXEC tSQLt.AssertEquals @exceptedcout, @discountamountcount;
EXEC tSQLt.AssertEquals @exceptedcout, @netamountcount;
END;
GO
CREATE PROCEDURE AllAttributesExists.[test FactInventories]
AS
BEGIN
DECLARE @exceptedcount INT = 5000;
DECLARE @inventoryid INT; SELECT @inventoryid = COUNT(InventoryID) FROM FactInventories;
DECLARE @stockreceived INT; SELECT @stockreceived = COUNT(StockReceived) FROM FactInventories;
DECLARE @stocksold INT; SELECT @stocksold = COUNT(StockSold) FROM FactInventories;
DECLARE @stockonhand INT; SELECT @stockonhand = COUNT(StockOnHand) FROM FactInventories;
EXEC tSQLt.AssertEquals @exceptedcount, @inventoryid;
EXEC tSQLt.AssertEquals @exceptedcount, @stockreceived;
EXEC tSQLt.AssertEquals @exceptedcount, @stocksold;
EXEC tSQLt.AssertEquals @exceptedcount, @stockonhand;
END;
GO
CREATE PROCEDURE AllAttributesExists.[test DimDates]
AS
BEGIN
DECLARE @exceptedcount INT = 871;
DECLARE @dateid INT; SELECT @dateid = COUNT(DateID) FROM DimDates;
DECLARE @date INT; SELECT @date = COUNT([Date]) FROM DimDates;
DECLARE @year INT; SELECT @year = COUNT([Year]) FROM DimDates;
DECLARE @month INT; SELECT @month = COUNT([Month]) FROM DimDates;
DECLARE @day INT; SELECT @day = COUNT([DAY]) FROM DimDates;
EXEC tSQLt.AssertEquals @exceptedcount, @dateid;
EXEC tSQLt.AssertEquals @exceptedcount, @date;
EXEC tSQLt.AssertEquals @exceptedcount, @year;
EXEC tSQLt.AssertEquals @exceptedcount, @month;
EXEC tSQLt.AssertEquals @exceptedcount, @day;
END;
GO
CREATE PROCEDURE AllAttributesExists.[test DimProducts]
AS
BEGIN
DECLARE @exceptedcount INT = 264;
DECLARE @productid INT; SELECT @productid = COUNT(ProductID) FROM DimProducts;
DECLARE @productname INT; SELECT @productname = COUNT(ProductName) FROM DimProducts;
DECLARE @productcategory INT; SELECT @productcategory = COUNT(ProductCategory) FROM DimProducts;
DECLARE @productsubcategory INT; SELECT @productsubcategory = COUNT(ProductSubCategory) FROM DimProducts;
DECLARE @productprice INT; SELECT @productprice = COUNT(ProductPrice) FROM DimProducts;
EXEC tSQLt.AssertEquals @exceptedcount, @productid;
EXEC tSQLt.AssertEquals @exceptedcount, @productname;
EXEC tSQLt.AssertEquals @exceptedcount, @productcategory;
EXEC tSQLt.AssertEquals @exceptedcount, @productsubcategory;
EXEC tSQLt.AssertEquals @exceptedcount, @productprice;
END;
GO
EXEC tSQLt.Run 'AllAttributesExists'