[Groonga-commit] groonga/gcs [master] Expand scenarios by expandScenario()

Back to archive index

YUKI Hiroshi null+****@clear*****
Thu Nov 15 12:49:54 JST 2012


YUKI Hiroshi	2012-11-15 12:49:54 +0900 (Thu, 15 Nov 2012)

  New Revision: a2afadf0cb6e8040ca159cc7677b3cdadd283348
  https://github.com/groonga/gcs/commit/a2afadf0cb6e8040ca159cc7677b3cdadd283348

  Log:
    Expand scenarios by expandScenario()

  Modified files:
    test/api-configuration.test.js
    tools/scenario-runner.js

  Modified: test/api-configuration.test.js (+9 -34)
===================================================================
--- test/api-configuration.test.js    2012-11-15 12:46:03 +0900 (8b9512b)
+++ test/api-configuration.test.js    2012-11-15 12:49:54 +0900 (adae28f)
@@ -1338,51 +1338,26 @@ suite('Configuration API', function() {
       return /\.json$/i.test(name);
     }).map(function(scenarioFileName) {
       var file = path.resolve(scenariosDir, scenarioFileName);
-      var requests = fs.readFileSync(file);
-      requests = JSON.parse(requests);
+      var scenario = fs.readFileSync(file);
+      scenario = JSON.parse(scenario);
 
-      var scenarioName = scenarioFileName.replace(/\.json$/, '');
+      var scenarioBaseName = scenarioFileName.replace(/\.json$/, '');
 
-      var setupRequests = requests.filter(function(request) {
-            return request.name.indexOf('setup:') == 0;
-          });
-      var teardownRequests = requests.filter(function(request) {
-            return request.name.indexOf('teardown:') == 0;
-          });
-
-      var fileNames = {};
-      requests.forEach(function(request, index) {
-        var fileName = ScenarioRunner.toSafeName(request.name);
-        var count = 1;
-        while (fileName in fileNames) {
-          fileName = request.name + count++;
-        }
-        request.fileName = fileName + '.txt';
-
-        if (request.name.indexOf('setup:') == 0 ||
-            request.name.indexOf('teardown:') == 0)
-          return;
-
-        test(scenarioName + ': ' + request.name, function(done) {
-          var scenario = {
-                requests: setupRequests
-                            .concat([request])
-                            .concat(teardownRequests)
-                            .map(function(request) {
-                              return Object.create(request);
-                            })
-              };
+      var scenarios = ScenarioRunner.expandScenario(scenario);
+      scenarios.forEach(function(scenario) {
+        test(scenarioBaseName + ': ' + scenario.name, function(done) {
           var runner = new ScenarioRunner({
                 accessKeyId: 'dummy-access-key-id',
                 secretAccessKey: 'dummy-access-key',
                 host: 'localhost',
                 port: utils.testPort
               });
-          var expectedResponsesDir = path.join(expectedResponsesBaseDir, scenarioName);
+          var expectedResponsesDir = path.join(expectedResponsesBaseDir, scenarioBaseName);
           runner.on('end', function(event) {
             try {
               scenario.requests.forEach(function(request) {
-                var expected = path.join(expectedResponsesDir, request.fileName);
+                var fileName = ScenarioRunner.toSafeName(request.name) + '.txt';
+                var expected = path.join(expectedResponsesDir, fileName);
                 expected = fs.readFileSync(expected).toString();
                 expected = new ScenarioResponse(expected);
                 var actual = new ScenarioResponse(request.response);

  Modified: tools/scenario-runner.js (+4 -2)
===================================================================
--- tools/scenario-runner.js    2012-11-15 12:46:03 +0900 (ad9b0f0)
+++ tools/scenario-runner.js    2012-11-15 12:49:54 +0900 (5de7974)
@@ -40,7 +40,8 @@ function expandScenarios(scenarios) {
   });
   return expanded;
 };
-ScenariosRunner.expandScenarios = expandScenarios;
+ScenariosRunner.expandScenarios =
+  ScenarioRunner.expandScenarios = expandScenarios;
 
 function expandScenario(scenario) {
   if (scenario.setup) {
@@ -88,7 +89,8 @@ function expandScenario(scenario) {
 
   return scenarios;
 };
-ScenariosRunner.expandScenario = expandScenario;
+ScenariosRunner.expandScenario =
+  ScenarioRunner.expandScenario = expandScenario;
 
 ScenariosRunner.prototype._process = function(params) {
   if (!params.start) params.start = Date.now();
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index