feat: initial commit
This commit is contained in:
@@ -0,0 +1,97 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Text.Json;
|
||||
using NUnit.Framework;
|
||||
using Strata.Analytics.Biz.Extracts.Export;
|
||||
|
||||
namespace Strata.Analytics.Test.Unit.Biz.Extracts
|
||||
{
|
||||
[TestFixture]
|
||||
public class ExtractSqlHelperTest
|
||||
{
|
||||
[Test]
|
||||
public void GetFolderPathFromExternalStage_UrlStringOneLevel_GetFilePath()
|
||||
{
|
||||
//Arrange
|
||||
const string urlString = "s3://sdt-dev-tabularreporter/b8018250af34403ebdcc1770714042b2/";
|
||||
const string expectedString = "b8018250af34403ebdcc1770714042b2";
|
||||
|
||||
//Act
|
||||
var externalStageUrlTokens = ExtractSqlHelper.StripS3BucketFromUrl(urlString);
|
||||
|
||||
//Assert
|
||||
Assert.AreEqual(externalStageUrlTokens.FolderPath, expectedString);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void ExtractUrlValue_HasUrlProperty_GetUrlList()
|
||||
{
|
||||
|
||||
//Arrange
|
||||
var urlList = new List<string> { "someUrl" };
|
||||
var urlListString = JsonSerializer.Serialize(urlList);
|
||||
List<dynamic> dynamicList = new() { new Dictionary<string, object>() { { "property", "URL" }, { "property_value", urlListString } } };
|
||||
|
||||
//Act
|
||||
var urlValue = ExtractSqlHelper.ExtractUrlValue(dynamicList);
|
||||
|
||||
//Assert
|
||||
Assert.AreEqual(urlValue, urlList);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetFolderPathFromExternalStage_UrlStringTwoLevels_GetFilePath()
|
||||
{
|
||||
//Arrange
|
||||
const string urlString = "s3://sdt-dev-tabularreporter/b8018250af34403ebdcc1770714042b2/b8018250af34403ebdcc1770714042b2/";
|
||||
const string expectedString = "b8018250af34403ebdcc1770714042b2/b8018250af34403ebdcc1770714042b2";
|
||||
|
||||
//Act
|
||||
var externalStageUrlTokens = ExtractSqlHelper.StripS3BucketFromUrl(urlString);
|
||||
|
||||
//Assert
|
||||
Assert.AreEqual(externalStageUrlTokens.FolderPath, expectedString);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetFolderPathFromExternalStage_UrlStringNoLevels_GetFilePath()
|
||||
{
|
||||
//Arrange
|
||||
const string urlString = "s3://sdt-dev-tabularreporter/";
|
||||
const string expectedString = "";
|
||||
|
||||
//Act
|
||||
var externalStageUrlTokens = ExtractSqlHelper.StripS3BucketFromUrl(urlString);
|
||||
|
||||
//Assert
|
||||
Assert.AreEqual(externalStageUrlTokens.FolderPath, expectedString);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetBucketNameFromExternalStage_UrlStringNoLevels_GetBucketName()
|
||||
{
|
||||
//Arrange
|
||||
const string urlString = "s3://sdt-dev-tabularreporter/";
|
||||
const string expectedString = "sdt-dev-tabularreporter";
|
||||
|
||||
//Act
|
||||
var externalStageUrlTokens = ExtractSqlHelper.StripS3BucketFromUrl(urlString);
|
||||
|
||||
//Assert
|
||||
Assert.AreEqual(externalStageUrlTokens.BucketName, expectedString);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void GetBucketNameFromExternalStage_UrlStringOneLevel_GetBucketName()
|
||||
{
|
||||
//Arrange
|
||||
const string urlString = "s3://sdt-dev-tabularreporter/b8018250af34403ebdcc1770714042b2/";
|
||||
const string expectedString = "sdt-dev-tabularreporter";
|
||||
|
||||
//Act
|
||||
var externalStageUrlTokens = ExtractSqlHelper.StripS3BucketFromUrl(urlString);
|
||||
|
||||
//Assert
|
||||
Assert.AreEqual(externalStageUrlTokens.BucketName, expectedString);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user