public TestCase GetTestCase(string id) { _logger.LogTrace("Creating TestCase {id}", id); var scopedTestCaseDataStore = new ScopedDataStore(DataStorage, id); var testCaseDataStore = new ExtendedDataStore(scopedTestCaseDataStore, (ds, transform, dataStore) => ContentProcessor.Process(ds.GetContent(transform), new ScopedDataStore(dataStore, Path.GetDirectoryName(transform)))); var tmpDataStore = new ScopedDataStore(scopedTestCaseDataStore, ".tmp"); return(new TestCase(id, testCaseDataStore, tmpDataStore, _dataStoreProvider)); }
public void ResolvingAnItemSucceeds() { var baseDir = PathUtils.ResolveRelativeToAssmeblyLocation("TestData/TestCases/ExtendedDataStore"); var store = new ExtendedDataStore(new FileBasedDataStore(baseDir)); Assert.That(store.Contains("afile.xml"), Is.True); Assert.That(store.Contains("nonexistent"), Is.False); string content = store.GetContent("afile.xml"); Assert.That(content, Is.EqualTo("<root/>")); }
public TestCase GetTestCase(string id) { _logger?.LogTrace("Creating TestCase {id}", id); var scopedTestCaseDataStore = new ScopedDataStore(DataStorage, id); var testCaseDataStore = new ExtendedDataStore(scopedTestCaseDataStore, (ds, transform, dataStore) => ContentProcessor.Process(ds.GetContent(transform), new ScopedDataStore(dataStore, Path.GetDirectoryName(transform)))); var tmpDataStore = new ScopedDataStore(scopedTestCaseDataStore, ".tmp"); var testCaseContent = testCaseDataStore.GetRequiredContent(".test"); var testModel = JsonConvert.DeserializeObject <TestCaseModel>(testCaseContent); if (testModel.Actions == null) { var v1Model = JsonConvert.DeserializeObject <TestCaseModelV1>(testCaseContent); testModel = new(v1Model.Tags, v1Model.Parameters?.Actions); } Require.NotNull(testModel.Actions, $"No actions found for test {id}"); var actions = testModel.Actions.Select(ParseUrl).ToList(); return(new TestCase(id, testModel.Tags.ToEmptyIfNull(), actions, testCaseDataStore, tmpDataStore, _dataStoreProvider)); }