by Jonathan Halder | Dec 21, 2023 | MS Access, MS Access Forms, MS Access VBA Coding, TDD
Ok, so I got a test started up here, let’s try to continue and see where it goes: ‘@TestMethod(“FormListener”) Private Sub FormListenerRaisesBoundDataChangedEvent() FormListenerTest.Setup NewForm NewForm.TestText = “NewThing” End...
by Jonathan Halder | Dec 20, 2023 | MS Access, MS Access Forms, MS Access VBA Coding, TDD
I am trying to build a Form Auditing class using TDD. So far I’ve created a FormListener class which hooks into the Form BeforeUpdate handler. Then I created a FormIterator class which will eventually iterate through the Form object during the BeforeUpdate event...
by Jonathan Halder | Dec 19, 2023 | MS Access, MS Access Forms, MS Access Tables, MS Access VBA Coding, TDD
Time to do more test driven development! So we left off last time thinking about doing a test to see if a dictionary object I am going to create to store the form field changes is a new object. I was trying to determine how to Assert that using RubberDuckVBA and I was...
by Jonathan Halder | Dec 18, 2023 | MS Access, MS Access Features, MS Access Forms, MS Access Queries, MS Access Reports, MS Access Tables, MS Access VBA Coding
Refactoring code is something I do often. Trying to find ways to make things simpler and more readable are two reasons of many that I do this. As I work on code and refactor it, I find myself continually, daily, using tools to find and replace code, and not quite as...
by Jonathan Halder | Dec 12, 2023 | MS Access, MS Access Forms, MS Access VBA Coding, TDD
So in order for the FormListener class to raise an event which passes all the bound field’s old and new values, or chooses the ones that have changed, I am feeling like I can create a testable object to do that. Something like a FormIterator. It should be run in...
by Jonathan Halder | Dec 11, 2023 | MS Access, MS Access Forms, MS Access VBA Coding, TDD
Ok, so in the last installment, I told myself to stop and review this. I think my last couple of tests were going down the wrong path. Let me review what I am trying to achieve again: Here’s what I said in post 1: I am going to start by attempting to design a...