示例#1
0
        private static async Task RunFetchAllFilesAsyncTest(SymsAdapter adapter)
        {
            await SymsTestHelper.CleanDatabase(adapter, databaseName);

            string createDatabaseRequest = TestHelper.GetInputFileContent(testSubpath, testName, "createDatabase.json");
            await adapter.WriteAsync($"{databaseName}/{databaseName}.manifest.cdm.json", createDatabaseRequest);

            string tableName1          = "symsTestTable1";
            string createTableRequest1 = TestHelper.GetInputFileContent(testSubpath, testName, "createTable1Request.json");
            await adapter.WriteAsync($"{databaseName}/{tableName1}.cdm.json", createTableRequest1);

            string tableName2          = "symsTestTable2";
            string createTableRequest2 = TestHelper.GetInputFileContent(testSubpath, testName, "createTable2Request.json");
            await adapter.WriteAsync($"{databaseName}/{tableName2}.cdm.json", createTableRequest2);

            IList <string> databases = await adapter.FetchAllFilesAsync("/");

            Assert.IsTrue(string.Equals(DatabasesManifest, databases[0]));

            IList <string> entities = await adapter.FetchAllFilesAsync($"{databaseName}/");

            Assert.IsTrue(entities.Count == 2);
            Assert.IsTrue(string.Equals($"{tableName1}.cdm.json", entities[0]));
            Assert.IsTrue(string.Equals($"{tableName2}.cdm.json", entities[1]));

            await SymsTestHelper.CleanDatabase(adapter, databaseName);
        }
示例#2
0
        private static async Task TestCreateorUpdateRelationshipTable(SymsAdapter adapter, string relationshipName, string request, string expectedResponse)
        {
            await adapter.WriteAsync($"{databaseName}/{databaseName}.manifest.cdm.json/relationships/{relationshipName}", request);

            string actualResponse = await adapter.ReadAsync($"{databaseName}/{databaseName}.manifest.cdm.json/relationships/{relationshipName}");

            Assert.IsTrue(SymsTestHelper.JsonObjectShouldBeEqualAsExpected(expectedResponse, actualResponse));
        }
示例#3
0
        private static async Task TestCreateorUpdateTable(SymsAdapter adapter, string tableName, string request, string expectedResponse)
        {
            // Create Table Test case
            await adapter.WriteAsync($"{databaseName}/{tableName}.cdm.json", request);

            string actualResponse = await adapter.ReadAsync($"{databaseName}/{tableName}.cdm.json");

            Assert.IsTrue(SymsTestHelper.JsonObjectShouldBeEqualAsExpected(expectedResponse, actualResponse));
        }
示例#4
0
 public static async Task CleanDatabase(SymsAdapter adapter, string dbName)
 {
     try
     {
         await adapter.WriteAsync($"{dbName}/{dbName}.manifest.cdm.json", null);
     }
     catch (Exception e)
     {
         if (!e.Message.Contains("NotFound"))
         {
             throw;
         }
     }
 }
示例#5
0
        private static async Task TestRemoveRelationship(SymsAdapter adapter, string relationshipName)
        {
            await adapter.WriteAsync($"{databaseName}/{databaseName}.manifest.cdm.json/relationships/{relationshipName}", null);

            try
            {
                await adapter.ReadAsync($"{databaseName}/{databaseName}.manifest.cdm.json/relationships/{relationshipName}");

                Assert.Fail();
            }
            catch (Exception e)
            {
                if (!e.Message.Contains("Not Found"))
                {
                    throw;
                }
            }
        }
示例#6
0
        private static async Task TestRemoveTable(SymsAdapter adapter, string tableName)
        {
            await adapter.WriteAsync($"{databaseName}/{tableName}.cdm.json", null);

            try
            {
                await adapter.ReadAsync($"{databaseName}/{tableName}.cdm.json");

                Assert.Fail();
            }
            catch (Exception e)
            {
                if (!e.Message.Contains("Not Found"))
                {
                    throw;
                }
            }
        }