test

Scala: Popular tools, libraries, and frameworks

Table of Contents1 - Build tools2 - Testing tools3 - Database4 - Functional Programming5 - Asynchronous/parallel/concurrent programming6 - Web frameworks7 - JSON8 - HTTP clients9 - Configuration/properties10 - Many more

This page is a collection of popular tools, libraries, and frameworks for the Scala programming language.

Back to top

Build tools

“Sooner or later, we all go through a crucible”

“Sooner or later, we all go through a crucible ... Most believe there are two types of people who go into a crucible. The ones who become stronger from the experience and survive it, and the ones who die. But there’s a third type. The ones who learn to love the fire and choose to stay in their crucible because it’s easier to embrace the pain when it's all you know anymore.”

Sebastian Blood, Arrow

How to write “If string starts with” in Drupal 8 Twig templates

If you ever need to write a “string starts with” comparison in Drupal 8 Twig templates, I just used this approach in a node.html.twig template file and I can confirm that it works:

{% if uri starts with '/foo' %}

More accurately, what I did was to first get the URI for the current Drupal node, and then I perform that test:

How to use ScalaCheck in the SBT console alvin June 5, 2017 - 9:05am

If you add ScalaCheck to an SBT project like this:

libraryDependencies += "org.scalacheck" %% "scalacheck" % "1.13.4" % "test"

it’s only available in the SBT “test” scope. This means that when you start a Scala REPL session inside of SBT with its console command, the ScalaCheck library won’t be available in that scope.

To use ScalaCheck with the SBT console (REPL), don’t use its console command — use test:console instead. A complete example looks like this:

$ sbt

> test:console

scala> import org.scalacheck.Gen.choose

Note that after you type test:console your project may be compiled, so that step may take a few moments.

In summary, use SBT’s console command to start a “normal” Scala REPL inside SBT, and use test:console to start a REPL that you can run tests inside of. (Note that this same advice also applies to using ScalaTest or specs2.)

One thing a business analyst should ask about any requirement

As a business analyst (or any person interested in writing software requirements and quality), there is one thing you should always ask yourself whenever you write a business requirement:

Is this software requirement testable?

I’ve seen some business analysts write some crazy things and call them requirements, but IMHO, if you can’t test it, it’s not a requirement.

Blue Origin in-flight “crew capsule” escape test

Yesterday’s Blue Origin in-flight “crew capsule” escape test is extremely cool. If you haven’t seen it yet, there’s an animation of what the test is supposed to accomplish starting just after 3:30, and then the launch is at 51:20. If you get tired of watching the launch, make sure you fast-forward to see the booster landing at the end: