Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 10/28/21 in all areas

  1. David Heffernan

    Unit testing for beginners

    And then proceeds to offer six bullet points of advice! I think that there is a lot more to unit testing than meets the eye. Unit testing is clearly about proving correctness of your code at the time you write it. It's also obviously about ensuring correctness of the code in the future in the face of modifications to code, refactoring etc. But I think what is often overlooked is that unit testing (and indeed other forms of testing) is very much about defining what your code does, pinning down the contract between the code and its clients (fancy word for the things that call the code under test). Well written tests can provide clear documentation of the code under test. This can be extremely useful when you need to remind yourself what a particular piece of code does. The implementation of the code may be hard to read and extensive. The documentation of the code may be sparse or non-existent. But a well-written test can provide the information you need to fully understand what you can expect a function or class to do. Furthermore, I routinely find that when I write tests, especially with this perspective of a test as documenting the contact, that I am unhappy with the original implementation and the contract that is implied. I will then refactor the code to achieve the contract that I want. This implies that testing early is good. Test driven development takes that view to the ultimate of writing tests before the code. But even if you aren't going that far, write tests as early as possible. Then when you discover that the contract isn't ideal, you can change it and reduce the impact of that change. Change to design always has smaller impact the earlier it is done in a design process.
  2. That would only qualify as a LTNS version
  3. David Heffernan

    Unit testing for beginners

    You don't need a Delphi specific text to learn about unit testing. In fact I expect that the best texts won't be Delphi specific.
  4. Would be nice to have a written transcript also. Many people (or at least one 🙂 ) prefers reading this kind of stuff instead watching youtube. Also no speakers connected at work to the computer.
  5. Vincent Parrett

    Unit testing for beginners

    Nothing really, I just added it to differentiate it from DUnit 😉
  6. Stefan Glienke

    Unit testing for beginners

    If you type "how to unit test and what to test" into google the first page lists a plethora of good articles on the subject
  7. They used to have a "Premium" subscription option which included prior version support always with the caveat "some limitation apply." I believe they did provide a backport for a couple of fixes but that was years back. They have changed their support agreements since then to remove that line. But, the option is still listed online this older page: https://support.embarcadero.com/annual Update Subscription (RAD Studio, Delphi, C++Builder) The base level annual agreement for Update Subscription. Service features are: Features and benefits are listed here https://www.embarcadero.com/support One support contact per covered Embarcadero Product License Three (3) incidents annually per covered Embarcadero Product License (Excludes Starter and Academic licenses) Access to all product updates and upgrades released during the term of the agreement Product updates and upgrades delivered by electronic transfer Phone access to the Embarcadero Support Center during regional business hours Access to the Embarcadero online knowledgebase Online support incident submittal and tracking; full access to Embarcadero Support Online The support element of the service is provided until the predefined number of incidents has been used or 12 months have elapsed, whichever comes first. The maintenance element of the service is always provided for the full 12 months. Premium The highest level annual agreement includes all of the standard service features listed above. Additional service features are: Features and benefits are listed here https://www.embarcadero.com/support Three (3) additional incidents for the covered Embarcadero Product(s) Highest priority for submitted support incidents Prior version support/updates for top issues (some limitations apply) For older references: here's a 2016 post from Google+ (exported to this blogsite) there was a comment back in 2018 which mentions 'Prior version support/updates for top issues (some limitations apply" https://delphi-developers-archive.blogspot.com/2016/08/today-was-first-time-i-heard-of.html Here's another reference from the 2016 time frame which was a brochure for Support options: https://github.com/ideasawakened/DelphiKB/blob/master/library/embarcadero_premium_subscription.pdf
  8. PeterPanettone

    Search Filter for GExperts ToDoList added

    I have added a Search Filter to the GExperts ToDoList: It is VERY FAST! It searches in all columns of the ToDoList! Usage: Type the search text into the Search Box and then press the Return/Enter key. To reset/cancel the search filter, just delete the search text in the Search Box and then press the Return/Enter key again. This Search Filter feature is very useful when you have many ToDo items in your project. Here is the source (based on r3686) : GX_ToDo.zip Changed the visibility of the FilterTodoList method from public to private: GX_ToDo v2.zip Slightly increased the height of the Search Box to show the whole search text instead of this: : GX_ToDo v3.zip Showing the number of unfiltered and filtered ToDo items: : GX_ToDo v4.zip Improved the height setting for the Search Box: GX_ToDo v5.zip I donate this source code (i.e. my changes to the existing source code) to the GExperts project maintained by Thomas. Added the issue to the source code website: https://sourceforge.net/p/gexperts/feature-requests/150/
  9. Remy Lebeau

    Exception classes implementing interfaces

    I've never seen anyone do it, or even suggest it. But, I don't see any reason why it couldn't be done.
  10. Eric Bonilha

    Full screen with iOS 15

    Hello I will help you with one of your questions for Monterey I had a huge issue that I needed to recompile my app but I couldn't use XCode 13 on Catalina, so I updated to Monterey and then used XCode 13 (and 13.1 as well for testing) and all deployed applications were crashing... I has to format my mac to original OS, then install Big Sur manually from USB and use XCode 13.0 I would not recommend updating to Monterey. But, I was using Delphi 11. But I tried Delphi 10.4.2 on Monterey with XCode 13 and it gave the same results, the app compiled and deployed but was crashing when starting.. So I guess Monterey is really not supported. Delphi 10.4.2 supports Big Sur as well, so I would update to Big Sur instead of Monterey, then you can use XCode 13
  11. David Heffernan

    Unit testing for beginners

    That doesn't make sense. You seldom attempt to write tests that exercise all combinations. That's the art of testing, finding a good set of test cases that are concise enough to verify, yet broad enough to provide comprehensive coverage.
  12. Lars Fosdal

    Unit testing for beginners

    Just from the top of my head... 3 + -3 3 + - 3 3 +- 3 - 3 + 3 -3+3 -3 + +3 How tolerant do you want the parser to be? I wrote a parser that did math on arrays in a stock price technical analysis tool back in the 90's. I built the parser so that it generated an expression tree, so the same calculation could be done rapidly on a number of data points. I could multiply a stock price with a currency price and subtract the adjusted value from the Oslo exchange with the same listed stock on NYSE. Good fun!
  13. Lars Fosdal

    awk-like processor using Delphi code?

    Dictionary and anonymous methods. Link the method to the keyword. Look up via the keyword and execute the code.
  14. Vincent Parrett

    Unit testing for beginners

    Yes, lets go with that 😉 It's alway nice to see no red numbers there 🙂
  15. Vincent Parrett

    Unit testing for beginners

    DUnitX isn't an extreme version (whatever that is) - just a diffferent testing framework.. delphi really only has 2 well used unit test frameworks (other languages have many) - pick one you like. https://www.finalbuilder.com/resources/blogs/introducing-dunitx
  16. Dave Nottage

    Deploy Delphi 11 iOS 15 XCode 13

    Shame the IDE cannot tell you this specifically. Seems like a candidate for issuing a warning from Codex/Mosco 🙂
  17. Anders Melander

    One-button app to stop all explorer windows from flashing.

    Upgrade from Windows 2000 🙂
  18. Remy Lebeau

    Pos, SplitString

    What about this? uses ..., StrUtils; if StartsText('SELECT ', TrimLeft(Memo1.Text)) then MyQuery.Open else MyQuery.ExecSql; Or: if Memo1.Text.TrimLeft.StartsWith('SELECT ', True) then MyQuery.Open else MyQuery.ExecSql;
  19. haentschman

    Pos, SplitString

    Hi... I hope this SQL is only for you in the development? For editing SQL by users...have you heard of SQL Injection? https://en.wikipedia.org/wiki/SQL_injection
  20. Stano

    Pos, SplitString

    What happens if you add over time WITH XX AS (... ?
  21. Lars Fosdal

    Patch for Delphi 11 Alexandria available

    I haven't seen a GetIt induced restart fail yet - but now I am suddenly expecting it to fail...
  22. David Heffernan

    Patch for Delphi 11 Alexandria available

    Uwe is providing useful information that your problem may have an environmental aspect to it. Your antagonistic response is very counterproductive.
  23. Stefan Glienke

    Hot Reload in Delphi?

    Because hot reload is a modern part of the R in RAD. Stopping, recompiling and getting to the point where you were before the change would be completely unnecessary. Game devs using UE or similar tools have been using this for quite a while.
  24. Mike Torrettinni

    Hot Reload in Delphi?

    At first I couldn't imagine why could this be useful. But then I thought about all the little visual changes I need to do to on some forms to fit the desired look, and being able to hot reload a simple change of position or alignment or text and no need for reloading the project, this wold be really cool to have. Not sure how could it be useful for anything more than simple changes, but even just for my use case, I would vote for the 11.1/11.2 patch to include this feature!
  25. Uwe Raabe

    Conflict with TestInsight

    Well, that may indeed be problematic. The fact that I have a 16 core machine may hide that here. I will think of something to make the multi-threading optional, but there always has to be at least one thread besides the main one.
×