Skip to content

Commit a78c850

Browse files
authored
Added live test for Synapse (#21109)
1 parent 6aa7a2d commit a78c850

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
function GenerateDefinitionFile {
2+
param (
3+
[Parameter()]
4+
[string] $File
5+
)
6+
7+
$definition = [PSCustomObject]@{
8+
name = "DataFlow"
9+
properties = [PSCustomObject]@{
10+
type = "MappingDataFlow"
11+
typeProperties = [PSCustomObject]@{
12+
sources = @()
13+
sinks = @()
14+
transformations = @()
15+
scriptLines = @("")
16+
}
17+
}
18+
}
19+
20+
ConvertTo-Json $definition -Compress -Depth 3 | Out-File -FilePath $File -Encoding utf8 -NoNewline -Force
21+
}
22+
23+
Invoke-LiveTestScenario -Name "Create synapse data flow" -Description "Test creating a synapse data flow" -ScenarioScript `
24+
{
25+
param ($rg)
26+
27+
$rgName = $rg.ResourceGroupName
28+
$wsName = New-LiveTestResourceName
29+
$location = "eastus"
30+
$saName = New-LiveTestStorageAccountName
31+
$fsName = New-LiveTestStorageAccountName
32+
$flowName = New-LiveTestResourceName
33+
$fileName = New-LiveTestRandomName -Option AllLetters -MaxLength 8
34+
$file = "$fileName.json"
35+
36+
$username = "sqladmin"
37+
$password = ConvertTo-SecureString "Password123!" -AsPlainText -Force
38+
$sqlAdminCred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $password
39+
New-AzSynapseWorkspace -Name $wsName -ResourceGroupName $rgName -Location $location -DefaultDataLakeStorageAccountName $saName -DefaultDataLakeStorageFilesystem $fsName -SqlAdministratorLoginCredential $sqlAdminCred
40+
New-AzSynapseFirewallRule -WorkspaceName $wsName -AllowAllIp
41+
42+
Start-Sleep -Seconds 30
43+
44+
GenerateDefinitionFile($file)
45+
Set-AzSynapseDataFlow -Name $flowName -WorkspaceName $wsName -DefinitionFile $file
46+
47+
$actual = Get-AzSynapseDataFlow -Name $flowName -WorkspaceName $wsName
48+
Assert-NotNull $actual
49+
Assert-AreEqual $wsName $actual.WorkspaceName
50+
Assert-AreEqual $flowName $actual.Name
51+
}
52+
53+
Invoke-LiveTestScenario -Name "Remove synapse data flow" -Description "Test removing a synapse data flow" -ScenarioScript `
54+
{
55+
param ($rg)
56+
57+
$rgName = $rg.ResourceGroupName
58+
$wsName = New-LiveTestResourceName
59+
$location = "eastus"
60+
$saName = New-LiveTestStorageAccountName
61+
$fsName = New-LiveTestStorageAccountName
62+
$flowName = New-LiveTestResourceName
63+
$fileName = New-LiveTestRandomName -Option AllLetters -MaxLength 8
64+
$file = "$fileName.json"
65+
66+
$username = "sqladmin"
67+
$password = ConvertTo-SecureString "Password123!" -AsPlainText -Force
68+
$sqlAdminCred = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $username, $password
69+
New-AzSynapseWorkspace -Name $wsName -ResourceGroupName $rgName -Location $location -DefaultDataLakeStorageAccountName $saName -DefaultDataLakeStorageFilesystem $fsName -SqlAdministratorLoginCredential $sqlAdminCred
70+
New-AzSynapseFirewallRule -WorkspaceName $wsName -AllowAllIp
71+
72+
Start-Sleep -Seconds 60
73+
74+
GenerateDefinitionFile($file)
75+
Set-AzSynapseDataFlow -Name $flowName -WorkspaceName $wsName -DefinitionFile $file
76+
Remove-AzSynapseDataFlow -Name $flowName -WorkspaceName $wsName -Force
77+
78+
$actual = Get-AzSynapseDataFlow -Name $flowName -WorkspaceName $wsName -ErrorAction SilentlyContinue
79+
Assert-Null $actual
80+
}

0 commit comments

Comments
 (0)