Planning Guide Test Plan = by Chamara Henaka | 2020-Nov-25 --- **INTRODUCTION:** Implemention: Generating the meta appointments series for planning guide recurrences. **OBJECTIVES** * Modifying a parent instance of the series in the edit window will modify all the child instances. Important: Dragging and dropping the time slot of a parent instance in the calendar will not be considered as "Modified". Dragging and Dropping a time slot of any instance will make the instance detached. * If a child instance is modified or disabled it gets detached. * A detached instance can not be re-attached. * Detaching any instance including parent, will make the next available instance as the parent of the series for the rest of the child instances. P.S. Action of making the next instance as the parent will be computed based on the size of the series. (Test Cases are Provided) 1 * Disabling a series does not remove the detached instances. **POSSIBLE cases that any instance(Parent or Child) could be detached.** 1. Cancel Or Delete parent of the child instance 2. Dragging and Dropping a time slot of any instance (Parent Or Child) 3. Modifying a child instance in the edit window. TEST CASES = **1. Creating Planning Guide Series** CASE 1: Testing Multiple Resource 1. Create a Planning Guide Series for Multiple Resources *Expectations:* * Planning Guide Series should be generated for all the resources. * Should not show any record under "Appointment Removed From Series" (In the version we are working on right now shows unnecessary records here) * Make sure it throws validation errors if any added resource has no permission for the selected appointment type. 2. Disable one of the resources and try to save the Series. *Expectation:* Not sure what is the exact expectation is in this case. Right now it still shows the disabled resource in the edit window but throws a validation error for the disabled resource when trying to save. Should we prevent showing the disabled Resource in the edit window? CASE 2: Testing Repeat Frequency 1. Create a Planning Guide Series with Repeat Frequency set as 0 *Expectations:* Should create Planning Guide Series with one instance 2. Create a Planning Guide Series with Repeat Frequency set as higher 0 *Expectations:* Should create Planning Guide Series with recurrence instances based on the frequency 3. Create a Planning Guide Series with Multiple "Times and Recurrences" *Expectations:* * Should create Planning Guide Series with recurrence instances based on the frequency and no of "Times and Recurrences" Note: Right now the (+) button is not working when creating a new Series but working after creating the Series. --- **2. Modifying , Delete/Canceling Planning Guide Series** CASE 1: Testing modifying the Parent Instance * Modify the parent instance of the series *Expectations:* All the changes should be applied to all the associated child instances CASE 2: Testing modifying the child Instance when the Series Size is 2 * Create a Series with TWO recurring Instances and modify the child instance *Expectations:* Both Parent and Child instances should get detached CASE 3: Testing modifying child Instances when the Series Size is 3 1. Create a Series with THREE recurring Instances and modify the first child instance *Expectations:* All the instances including the parent should get detached. 2. Create a Series with THREE recurring Instances and modify the second child instance *Expectations:* Only the second child instance should get detached. CASE 4: Testing modifying child instances when the Series Size is 4 * Create a Series with Four recurring Instances and modify the second child instance *Expectations:* Both second and third(last) child instances should be detached CASE 5: Testing modifying child instances when the Series Size higher than 4 1. Create a Series with more than four recurring Instances and modify the second child instance *Expectations:* It should create a new Series starting from the third child instance and the third child instance becomes the Parent instance of the new series. So it should be ended up with two series one is for Orginal Series that contains two instances and the newly created one. 2. Create a Series with more than four recurring Instances and modify the last child instance *Expectations:* The last child instance should be detached. --- **3. Dragging and Dropping (DD) time slots in Calendar** CASE 1: Testing DD for Parent Instance when the Series Size is 2 * Create a Series with TWO recurring Instances and DD the Parent instance *Expectations:* Both Parent and Child instances should get detached CASE 2: Testing DD for Parent Instance when the Series Size is higher than 3 * Create a Series with more than 3 recurring Instances and DD the Parent instance *Expectations:* Parent instance should get detached and Child 1 instance become the Parent of the Series. CASE 3: Testing DD for child Instance when the Series Size is 2 * Create a Series with TWO recurring Instances and DD the child instance *Expectations:* Both Parent and Child instances should get detached CASE 4: Testing DD for child Instances when the Series Size is 3 1. Create a Series with THREE recurring Instances and DD the first child instance *Expectations:* All the instances including the parent should get detached. 2. Create a Series with THREE recurring Instances and DD the second child instance *Expectations:* Only the second child instances should get detached. CASE 5: Testing DD for child instances when the Series Size is 4 * Create a Series with Four recurring Instances and DD the second child instance *Expectations:* Both second and third(last) child instances should be detached CASE 6: Testing DD for child instances when the Series Size higher than 4 1. Create a Series with more than four recurring Instances and DD the second child instance *Expectations:* It should create a new Series starting from the third child instance and the third child instance becomes the Parent instance of the new series. So it should be ended up with two series one is for the Orginal Series that contains two instances and the newly created one. 2. Create a Series with more than four recurring Instances and DD the last child instance *Expectations:* The last child instance should be detached. --- **4. Disabling Planning Guide Series** - Disabling parent instance of Planning Guide Series shoud disable All the instances of the series. - Disabling any child instance of Planning Guide Series shoud detach the child instance from the series --- **5. Restoring Planning Guide Series** - Restoring any child instance will not be re-attached to any series and will be behaved as a stand-alone instance - Restoring a disabled palnning guide series should resore alll the instances of the series --- **6. Make sure the relevant records shows correctly under "Conflicts" and "Removed From Series" Please refer the attached Screen.** ![](https://i.imgur.com/J1qalDK.png) --- **7. Test the Cron and see it fix the data for old Records to work with new Planning Guide work-flow**