lots of cleanup and simplification in test case construction
This commit is contained in:
@@ -3,7 +3,6 @@ classdef parametricTestSuite < matlab.unittest.TestCase
|
||||
% System under test
|
||||
testClass = miSim;
|
||||
domain = rectangularPrism;
|
||||
objective = sensingObjective;
|
||||
obstacles = cell(1, 0);
|
||||
|
||||
%% Diagnostic Parameters
|
||||
@@ -16,33 +15,52 @@ classdef parametricTestSuite < matlab.unittest.TestCase
|
||||
end
|
||||
properties (TestParameter)
|
||||
%% Simulation Parameters
|
||||
maxIter = num2cell([200, 400]); % number of timesteps to run
|
||||
maxIter = num2cell([25]); % number of timesteps to run
|
||||
|
||||
% Domain parameters
|
||||
minAlt = num2cell([1, 3]); % minimum allowed agent altitude, make sure test cases don't conflict with this
|
||||
minAlt = num2cell([1]); % minimum allowed agent altitude, make sure test cases don't conflict with this
|
||||
|
||||
% Sensing Objective Parameters
|
||||
discretizationStep = num2cell([0.01, 0.05]);
|
||||
discretizationStep = num2cell([0.01]);
|
||||
|
||||
% Agent Parameters
|
||||
collisionRange = num2cell([0.1, 0.5]);
|
||||
collisionRadius = num2cell([0.1]);
|
||||
|
||||
% Sensor Model Parameters
|
||||
betaDist = num2cell(3:6:15);
|
||||
betaTilt = num2cell(3:6:15);
|
||||
alphaDist = num2cell([2.5, 5]);
|
||||
alphaTilt = num2cell([15, 30]); % (degrees)
|
||||
betaDist = num2cell([3, 15]);
|
||||
alphaTilt = num2cell([15, 30]); % (degrees)methods
|
||||
betaTilt = num2cell([3, 15]);
|
||||
|
||||
% Communications Parameters
|
||||
comRange = num2cell(1:2:5);
|
||||
comRange = num2cell([3]);
|
||||
end
|
||||
|
||||
methods (Test, ParameterCombination = "exhaustive")
|
||||
% Test methods
|
||||
% Test cases
|
||||
function single_agent_gradient_ascent(tc, maxIter, minAlt, discretizationStep, collisionRadius, alphaDist, betaDist, alphaTilt, betaTilt, comRange)
|
||||
% Set up square domain
|
||||
l = 10;
|
||||
tc.domain = tc.domain.initialize([zeros(1, 3); l * ones(1, 3)], REGION_TYPE.DOMAIN, "Domain");
|
||||
tc.domain.objective = tc.domain.objective.initialize(objectiveFunctionWrapper([.75 * l, 0.75 * l]), tc.domain, discretizationStep, tc.protectedRange);
|
||||
|
||||
% Set up agent
|
||||
sensorModel = sigmoidSensor;
|
||||
sensorModel = sensorModel.initialize(alphaDist, betaDist, alphaTilt, betaTilt);
|
||||
agentPos = [l/4, l/4, 3*l/4];
|
||||
collisionGeometry = spherical;
|
||||
collisionGeometry = collisionGeometry.initialize(agentPos, collisionRadius, REGION_TYPE.COLLISION, "Agent 1 Collision Region");
|
||||
agents = {agent};
|
||||
agents{1} = agents{1}.initialize(agentPos, collisionGeometry, sensorModel, comRange, maxIter, "Agent 1", tc.plotCommsGeometry);
|
||||
|
||||
function single_agent_gradient_ascent(tc, maxIter, minAlt, discretizationStep, collisionRange, alphaDist, alphaTilt, betaDist, betaTilt, comRange)
|
||||
1;
|
||||
% Set up simulation
|
||||
tc.testClass = tc.testClass.initialize(tc.domain, agents, minAlt, tc.timestep, maxIter, tc.obstacles, tc.makePlots, tc.makeVideo);
|
||||
|
||||
% Run
|
||||
tc.testClass = tc.testClass.run();
|
||||
|
||||
% Cleanup
|
||||
tc.testClass.teardown();
|
||||
end
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user