Code Monkey home page Code Monkey logo

Comments (2)

Nxllpointer avatar Nxllpointer commented on September 25, 2024 1

Oh well intellij being intellij again

from kobweb-intellij-plugin.

bitspittle avatar bitspittle commented on September 25, 2024

Despite my best efforts -- 3 grueling days of deep diving into IJ test framework code -- I've come to the conclusion that tests simply aren't worth it at this point.

I tried creating IJ light tests, but those are super hacky. They barely resemble a real project, and there's no trivial way, or at least clearly documented way, to add dependencies on real libraries (which I wanted to do with Kobweb stuff). They are also single module projects only, and I am sure I will want to test multi-module projects soon.

I tried creating an IJ heavy test using Gradle, but that was a failure as well -- I simply could not figure out how to get the Gradle project to sync and not leak resources. All the example code online I could find with IntelliJ Gradle tests used internal helper methods that were not available to mere mortals like myself.

So at this point, I'm just going to lean on manual QA for now. The Kobweb plugin is relatively small and probably will be for its lifetime. Most of (all of?) its actions will all be isolated into one-off commands that will just work or they won't.

I'm very sad about this but my time as a solo dev is limited and I'm already fighting the IJ APIs enough just to get the plugin working :) The test framework is very bad -- it's a relic of the past with random fixtures and fixture settings all over the place that you have to magically know how to set, and even then, things don't quite work sometimes. The original way that JB tested their stuff using JUnit3 is awful, and it pervades almost all of their tests to this day. Booooo.

from kobweb-intellij-plugin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.