diff --git a/src/arcade/patch/agent/action/PatchActionConvert.java b/src/arcade/patch/agent/action/PatchActionConvert.java index 1c33b50d6..72777e81f 100644 --- a/src/arcade/patch/agent/action/PatchActionConvert.java +++ b/src/arcade/patch/agent/action/PatchActionConvert.java @@ -87,7 +87,8 @@ public void step(SimState simstate) { oldCell.getVolume(), oldCell.getHeight(), oldCell.getCriticalVolume(), - oldCell.getCriticalHeight()); + oldCell.getCriticalHeight(), + oldCell.getCycles()); PatchCell newCell = (PatchCell) cellContainer.convert(sim.cellFactory, location, sim.random); grid.addObject(newCell, location); diff --git a/src/arcade/patch/agent/cell/PatchCell.java b/src/arcade/patch/agent/cell/PatchCell.java index 4a84bb520..085ba0942 100644 --- a/src/arcade/patch/agent/cell/PatchCell.java +++ b/src/arcade/patch/agent/cell/PatchCell.java @@ -123,12 +123,12 @@ public abstract class PatchCell implements Cell { /** Cell parameters. */ final Parameters parameters; + /** List of cell cycle lengths (in minutes). */ + public final Bag cycles = new Bag(); + /** Cell population links. */ final GrabBag links; - /** List of cell cycle lengths (in minutes). */ - private final Bag cycles = new Bag(); - /** If cell is stopped in the simulation. */ private boolean isStopped; @@ -410,7 +410,8 @@ public CellContainer convert() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } /** diff --git a/src/arcade/patch/agent/cell/PatchCellCARTCD4.java b/src/arcade/patch/agent/cell/PatchCellCARTCD4.java index 609be4934..3090fdb36 100644 --- a/src/arcade/patch/agent/cell/PatchCellCARTCD4.java +++ b/src/arcade/patch/agent/cell/PatchCellCARTCD4.java @@ -52,7 +52,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } @Override diff --git a/src/arcade/patch/agent/cell/PatchCellCARTCD8.java b/src/arcade/patch/agent/cell/PatchCellCARTCD8.java index d7f66c9a0..6d19517b7 100644 --- a/src/arcade/patch/agent/cell/PatchCellCARTCD8.java +++ b/src/arcade/patch/agent/cell/PatchCellCARTCD8.java @@ -52,7 +52,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } @Override diff --git a/src/arcade/patch/agent/cell/PatchCellCancer.java b/src/arcade/patch/agent/cell/PatchCellCancer.java index 01d505229..0b4c002d0 100644 --- a/src/arcade/patch/agent/cell/PatchCellCancer.java +++ b/src/arcade/patch/agent/cell/PatchCellCancer.java @@ -71,7 +71,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } /** diff --git a/src/arcade/patch/agent/cell/PatchCellCancerStem.java b/src/arcade/patch/agent/cell/PatchCellCancerStem.java index b1701504c..a6a30948a 100644 --- a/src/arcade/patch/agent/cell/PatchCellCancerStem.java +++ b/src/arcade/patch/agent/cell/PatchCellCancerStem.java @@ -65,6 +65,7 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } } diff --git a/src/arcade/patch/agent/cell/PatchCellContainer.java b/src/arcade/patch/agent/cell/PatchCellContainer.java index 3a942c388..a85b0812b 100644 --- a/src/arcade/patch/agent/cell/PatchCellContainer.java +++ b/src/arcade/patch/agent/cell/PatchCellContainer.java @@ -1,5 +1,6 @@ package arcade.patch.agent.cell; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.agent.cell.Cell; import arcade.core.agent.cell.CellContainer; @@ -47,6 +48,9 @@ public final class PatchCellContainer implements CellContainer { /** Critical cell height [um]. */ public final double criticalHeight; + /** Cell cycles. */ + public final Bag cycles; + /** * Creates a {@code PatchCellContainer} instance. * @@ -60,6 +64,7 @@ public final class PatchCellContainer implements CellContainer { * @param height the cell height * @param criticalVolume the critical volume * @param criticalHeight the critical height + * @param cycles the cell cycles */ public PatchCellContainer( int id, @@ -71,7 +76,8 @@ public PatchCellContainer( double volume, double height, double criticalVolume, - double criticalHeight) { + double criticalHeight, + Bag cycles) { this.id = id; this.parent = parent; this.pop = pop; @@ -82,6 +88,7 @@ public PatchCellContainer( this.height = height; this.criticalVolume = criticalVolume; this.criticalHeight = criticalHeight; + this.cycles = cycles; } @Override diff --git a/src/arcade/patch/agent/cell/PatchCellFactory.java b/src/arcade/patch/agent/cell/PatchCellFactory.java index 0492e0801..b78a1b005 100644 --- a/src/arcade/patch/agent/cell/PatchCellFactory.java +++ b/src/arcade/patch/agent/cell/PatchCellFactory.java @@ -6,6 +6,7 @@ import java.util.HashSet; import java.util.Set; import java.util.logging.Logger; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.agent.cell.*; import arcade.core.sim.Series; @@ -158,9 +159,19 @@ public PatchCellContainer createCellForPopulation(int id, int pop) { double volume = parameters.getDouble("CELL_VOLUME"); double height = parameters.getDouble("CELL_HEIGHT"); int age = parameters.getInt("CELL_AGE"); - + Bag cycles = new Bag(); return new PatchCellContainer( - id, 0, pop, age, 0, State.UNDEFINED, volume, height, volume, height + compression); + id, + 0, + pop, + age, + 0, + State.UNDEFINED, + volume, + height, + volume, + height + compression, + cycles); } /** diff --git a/src/arcade/patch/agent/cell/PatchCellRandom.java b/src/arcade/patch/agent/cell/PatchCellRandom.java index 19a31a035..3db18519d 100644 --- a/src/arcade/patch/agent/cell/PatchCellRandom.java +++ b/src/arcade/patch/agent/cell/PatchCellRandom.java @@ -56,7 +56,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } @Override diff --git a/src/arcade/patch/agent/cell/PatchCellTissue.java b/src/arcade/patch/agent/cell/PatchCellTissue.java index 352260b28..385eef051 100644 --- a/src/arcade/patch/agent/cell/PatchCellTissue.java +++ b/src/arcade/patch/agent/cell/PatchCellTissue.java @@ -82,7 +82,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } @Override diff --git a/src/arcade/patch/sim/output/PatchOutputDeserializer.java b/src/arcade/patch/sim/output/PatchOutputDeserializer.java index 80c1c73f2..da136db75 100644 --- a/src/arcade/patch/sim/output/PatchOutputDeserializer.java +++ b/src/arcade/patch/sim/output/PatchOutputDeserializer.java @@ -10,6 +10,7 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; +import sim.util.Bag; import arcade.core.agent.cell.CellContainer; import arcade.core.env.location.LocationContainer; import arcade.core.sim.output.OutputDeserializer; @@ -67,7 +68,10 @@ public PatchCellContainer deserialize( int divisions = jsonObject.get("divisions").getAsInt(); double volume = jsonObject.get("volume").getAsDouble(); double height = jsonObject.get("height").getAsDouble(); - + Bag cycles = new Bag(); + for (JsonElement cycle : jsonObject.get("cycles").getAsJsonArray()) { + cycles.add(cycle.getAsDouble()); + } State state = State.valueOf(jsonObject.get("state").getAsString()); JsonArray criticals = jsonObject.get("criticals").getAsJsonArray(); @@ -84,7 +88,8 @@ public PatchCellContainer deserialize( volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } } diff --git a/src/arcade/patch/sim/output/PatchOutputSerializer.java b/src/arcade/patch/sim/output/PatchOutputSerializer.java index cdfa02efa..042005a52 100644 --- a/src/arcade/patch/sim/output/PatchOutputSerializer.java +++ b/src/arcade/patch/sim/output/PatchOutputSerializer.java @@ -10,6 +10,7 @@ import com.google.gson.JsonObject; import com.google.gson.JsonSerializationContext; import com.google.gson.JsonSerializer; +import sim.util.Bag; import arcade.core.agent.cell.CellContainer; import arcade.core.env.location.Location; import arcade.core.env.location.LocationContainer; @@ -156,7 +157,12 @@ public JsonElement serialize( json.add("criticals", criticals); // TODO: add cycles - + Bag cycles = src.cycles; + JsonArray jsonCycles = new JsonArray(); + for (Object cycle : cycles) { + jsonCycles.add(cycle.toString()); + } + json.add("cycles", jsonCycles); return json; } } diff --git a/test/arcade/patch/agent/cell/PatchCellCARTCD4Test.java b/test/arcade/patch/agent/cell/PatchCellCARTCD4Test.java index 275892652..6cb45be40 100644 --- a/test/arcade/patch/agent/cell/PatchCellCARTCD4Test.java +++ b/test/arcade/patch/agent/cell/PatchCellCARTCD4Test.java @@ -5,6 +5,7 @@ import org.junit.jupiter.api.Test; import sim.engine.Schedule; import sim.engine.Steppable; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.sim.Simulation; import arcade.core.util.MiniBox; @@ -51,7 +52,7 @@ public final void setUp() { double criticalVolume = randomDoubleBetween(100, 200); double criticalHeight = randomDoubleBetween(4, 10); State state = State.UNDEFINED; - + Bag cycles = new Bag(); container = new PatchCellContainer( id, @@ -63,7 +64,8 @@ public final void setUp() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); doReturn(1.0).when(parametersMock).getDouble(any(String.class)); doReturn(1).when(parametersMock).getInt(any(String.class)); diff --git a/test/arcade/patch/agent/cell/PatchCellCARTCD8Test.java b/test/arcade/patch/agent/cell/PatchCellCARTCD8Test.java index a28ec9bb5..91455757e 100644 --- a/test/arcade/patch/agent/cell/PatchCellCARTCD8Test.java +++ b/test/arcade/patch/agent/cell/PatchCellCARTCD8Test.java @@ -5,6 +5,7 @@ import org.junit.jupiter.api.Test; import sim.engine.Schedule; import sim.engine.Steppable; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.sim.Simulation; import arcade.core.util.MiniBox; @@ -51,7 +52,7 @@ public final void setUp() throws NoSuchFieldException, IllegalAccessException { double criticalVolume = randomDoubleBetween(100, 200); double criticalHeight = randomDoubleBetween(4, 10); State state = State.UNDEFINED; - + Bag cycles = new Bag(); container = new PatchCellContainer( id, @@ -63,7 +64,8 @@ public final void setUp() throws NoSuchFieldException, IllegalAccessException { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); doReturn(0.0).when(parameters).getDouble(any(String.class)); doReturn(0).when(parameters).getInt(any(String.class)); diff --git a/test/arcade/patch/agent/cell/PatchCellCARTTest.java b/test/arcade/patch/agent/cell/PatchCellCARTTest.java index 241e65ab9..d27d7c477 100644 --- a/test/arcade/patch/agent/cell/PatchCellCARTTest.java +++ b/test/arcade/patch/agent/cell/PatchCellCARTTest.java @@ -44,6 +44,8 @@ public class PatchCellCARTTest { private static Bag bag; + static Bag cycles = new Bag(); + static class PatchCellMock extends PatchCellCART { PatchCellMock(PatchCellContainer container, Location location, Parameters parameters) { super(container, location, parameters, null); @@ -61,7 +63,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } @Override @@ -98,7 +101,8 @@ public final void setUp() throws NoSuchFieldException, IllegalAccessException { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); when(parameters.getDouble("ENERGY_THRESHOLD")).thenReturn(1.0); when(parameters.getDouble("NECROTIC_FRACTION")) diff --git a/test/arcade/patch/agent/cell/PatchCellCancerStemTest.java b/test/arcade/patch/agent/cell/PatchCellCancerStemTest.java index a87bc1566..ffa549f52 100644 --- a/test/arcade/patch/agent/cell/PatchCellCancerStemTest.java +++ b/test/arcade/patch/agent/cell/PatchCellCancerStemTest.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.util.GrabBag; import arcade.core.util.MiniBox; @@ -60,6 +61,8 @@ public class PatchCellCancerStemTest { static State cellState = State.QUIESCENT; + static Bag cellCycles = new Bag(); + @BeforeAll public static void setupMocks() { simMock = mock(PatchSimulation.class); @@ -99,7 +102,8 @@ public void step_calledWhenAgeGreaterThanApoptosisAge_doesNotSetApoptoticState() cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cellCycles); PatchCell cell = spy(new PatchCellCancerStem(container, locationMock, parametersMock)); cell.module = module; cell.processes.put(Domain.METABOLISM, metabolismMock); @@ -149,7 +153,8 @@ public void make_called_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cellCycles); PatchCellCancerStem cell = new PatchCellCancerStem(cellContainer, locationMock, parametersMock, links); @@ -198,7 +203,8 @@ public void make_calledWithLinks_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cellCycles); PatchCellCancerStem cell = new PatchCellCancerStem(cellContainer, locationMock, parametersMock, links); diff --git a/test/arcade/patch/agent/cell/PatchCellCancerTest.java b/test/arcade/patch/agent/cell/PatchCellCancerTest.java index f7f80df21..36c2e111b 100644 --- a/test/arcade/patch/agent/cell/PatchCellCancerTest.java +++ b/test/arcade/patch/agent/cell/PatchCellCancerTest.java @@ -2,6 +2,7 @@ import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.util.GrabBag; import arcade.core.util.MiniBox; @@ -56,6 +57,8 @@ public class PatchCellCancerTest { static State cellState = State.QUIESCENT; + static Bag cellCycles = new Bag(); + @BeforeAll public static void setupMocks() { simMock = mock(PatchSimulation.class); @@ -99,7 +102,8 @@ public void make_called_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cellCycles); PatchCellCancer cell = new PatchCellCancer(cellContainer, locationMock, parametersMock, links); @@ -148,7 +152,8 @@ public void make_calledWithLinks_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cellCycles); PatchCellCancer cell = new PatchCellCancer(cellContainer, locationMock, parametersMock, links); diff --git a/test/arcade/patch/agent/cell/PatchCellRandomTest.java b/test/arcade/patch/agent/cell/PatchCellRandomTest.java index 7f71b8feb..2112db81f 100644 --- a/test/arcade/patch/agent/cell/PatchCellRandomTest.java +++ b/test/arcade/patch/agent/cell/PatchCellRandomTest.java @@ -2,6 +2,7 @@ import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.util.GrabBag; import arcade.core.util.MiniBox; @@ -43,6 +44,8 @@ public class PatchCellRandomTest { static State cellState = State.QUIESCENT; + static Bag cellCycles = new Bag(); + static PatchCellContainer baseContainer = new PatchCellContainer( cellID, @@ -54,7 +57,8 @@ public class PatchCellRandomTest { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cellCycles); @BeforeAll public static void setupMocks() { @@ -84,7 +88,8 @@ public void make_calledNoLinks_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cellCycles); PatchCellRandom cell = new PatchCellRandom(cellContainer, locationMock, parametersMock, null); @@ -130,7 +135,8 @@ public void make_calledWithLinks_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cellCycles); PatchCellRandom cell = new PatchCellRandom(cellContainer, locationMock, parametersMock, links); diff --git a/test/arcade/patch/agent/cell/PatchCellTest.java b/test/arcade/patch/agent/cell/PatchCellTest.java index 63ccb0367..a75a29d62 100644 --- a/test/arcade/patch/agent/cell/PatchCellTest.java +++ b/test/arcade/patch/agent/cell/PatchCellTest.java @@ -58,6 +58,8 @@ public class PatchCellTest { static State cellState = State.QUIESCENT; + static Bag cellCycles = new Bag(); + static PatchCellContainer baseContainer = new PatchCellContainer( cellID, @@ -69,7 +71,8 @@ public class PatchCellTest { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cellCycles); static class PatchCellMock extends PatchCellTissue { PatchCellMock(PatchCellContainer container, Location location, Parameters parameters) { @@ -88,7 +91,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } } @@ -275,7 +279,8 @@ public void setState_proliferation_createsCell() { volume, cellHeight, critVolume, - critHeight); + critHeight, + cellCycles); PatchCellContainer daughterContainer = new PatchCellContainer( @@ -288,7 +293,8 @@ public void setState_proliferation_createsCell() { volume, cellHeight, critVolume, - critHeight); + critHeight, + cellCycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.setEnergy(200.); @@ -344,7 +350,8 @@ public void setState_proliferationWithNoFreeLocation_setQuiescent() { volume, cellHeight, critVolume, - critHeight); + critHeight, + cellCycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); Bag locationBag = new Bag(); @@ -379,7 +386,8 @@ public void setState_proliferativeWhenHeightExceedsCriticalHeight_setQuiescent() volume, cellHeight, cellCriticalVolume, - critHeight); + critHeight, + cellCycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); Bag locationBag = new Bag(); @@ -449,7 +457,8 @@ final Bag createPatchCellsWithVolumeAndCriticalHeight(int n, double volume, doub volume, cellHeight, cellCriticalVolume, - critHeight); + critHeight, + cellCycles); PatchCell cell = new PatchCellMock(container, locationMock, parametersMock); bag.add(cell); } @@ -612,7 +621,8 @@ public void findFreeLocations_whenOnlyOneNeighborIsFree_returnsCurrentAndOpenLoc cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cellCycles); PatchCell cell = new PatchCellMock(container, locationMock, parametersMock); Bag currentBag = new Bag(); @@ -664,7 +674,8 @@ public void findFreeLocations_whenOnlyOneNeighborIsFree_returnsCurrentAndOpenLoc cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cellCycles); PatchCell cell = new PatchCellMock(container, locationMock, parametersMock); Bag currentBag = new Bag(); diff --git a/test/arcade/patch/agent/cell/PatchCellTissueTest.java b/test/arcade/patch/agent/cell/PatchCellTissueTest.java index 006acccdf..20a11bfcf 100644 --- a/test/arcade/patch/agent/cell/PatchCellTissueTest.java +++ b/test/arcade/patch/agent/cell/PatchCellTissueTest.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; +import sim.util.Bag; import ec.util.MersenneTwisterFast; import arcade.core.agent.cell.CellState; import arcade.core.env.location.*; @@ -58,6 +59,8 @@ public class PatchCellTissueTest { static double cellCriticalHeight = randomDoubleBetween(10, 100); + static Bag cycles = new Bag(); + static class PatchCellMock extends PatchCellTissue { PatchCellMock(PatchCellContainer container, Location location, Parameters parameters) { super(container, location, parameters, null); @@ -75,7 +78,8 @@ public PatchCellContainer make(int newID, CellState newState, MersenneTwisterFas volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); } } @@ -117,7 +121,8 @@ public void step_calledWhenAgeGreaterThanApoptosisAge_setsApoptoticState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -160,7 +165,8 @@ public void step_calledWhenAgeLessThanApoptosisAge_doesNotSetState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -199,7 +205,8 @@ public void step_calledApoptoticStateAndApoptoticAge_doesNotResetState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -244,7 +251,8 @@ public void step_nutrientStarved_setNecroticStateWithProbability() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -291,7 +299,8 @@ public void step_nutrientStarved_setApototicStateWithProbability() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -336,7 +345,8 @@ public void step_energyDeficitDoesNotExceedThreshold_setQuiescent() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -377,7 +387,8 @@ public void step_undefinedCellWithMigratoryFlag_setsMigratoryState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -417,7 +428,8 @@ public void step_undefinedCellWithProliferativeFlag_setsProliferativeState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -462,7 +474,8 @@ public void step_undefinedCellWithProliferativeFlag_setsProliferativeState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -507,7 +520,8 @@ public void step_undefinedCellWithProliferativeFlag_setsProliferativeState() { cellVolume, cellHeight, cellCriticalVolume, - cellCriticalHeight); + cellCriticalHeight, + cycles); PatchCell cell = spy(new PatchCellMock(container, locationMock, parametersMock)); cell.processes.put(Domain.METABOLISM, metabolismMock); cell.processes.put(Domain.SIGNALING, signalingMock); @@ -556,7 +570,8 @@ public void make_calledWithoutLinks_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); PatchCellTissue cell = new PatchCellTissue(cellContainer, locationMock, parametersMock, links); @@ -605,7 +620,8 @@ public void make_calledWithLinks_createsContainer() { volume, height, criticalVolume, - criticalHeight); + criticalHeight, + cycles); PatchCellTissue cell = new PatchCellTissue(cellContainer, locationMock, parametersMock, links);