Posts

  • AspectMock

    The most powerful and flexible mocking framework for PHPUnit / Codeception.

    PHP is a language that was not designed to be testable. Really. How would you fake the time() function to produce the same result for each test call? Is there any way to stub a static method of a class? Can you redefine a class method at runtime? Dynamic languages like Ruby or JavaScript allow us to do this. These features are essential for testing. AspectMock to the rescue!

    Thousands of lines of untested code are written everyday in PHP. In most cases, this code is not actually bad, but PHP does not provide capabilities to test it. You may suggest rewriting it from scratch following test driven design practices and use dependency injection wherever possible. Should this be done for stable working code? Well, there are much better ways to waste time.

    With AspectMock you can unit-test practically any OOP code. PHP powered with AOP incorporates features of dynamic languages we have long been missing. There is no excuse for not testing your code. You do not have to rewrite it from scratch to make it testable. Just install AspectMock with PHPUnit or Codeception and try to write some tests. It’s really, really simple!

    Tags: #php

  • docker-api

    A lightweight Ruby client for the Docker Remote API

    Follow the installation instructions, and then run:

    $ sudo docker -d
    

    This will daemonize Docker so that it can be used for the remote API calls.

    Tags: #ruby

  • atmo

    :heavy_check_mark: Mock data for your prototypes and demos. Remote deployments to Zeit now.

    • Mock Http endpoints
    • SSL support
    • Static assets directory
    • Returns JSON/XML/Text
    • Write custom scripts with JS
    • Deploy with a single click (via Zeit’s Now)

    Tags: #typescript • atmo • prototyping

  • typescript-notebook

    Run JavaScript and TypeScript in node.js within VS Code notebooks with excellent support for debugging, tensorflowjs visulizations, plotly, danfojs, etc

    A Visual Studio Code extension required to get started with TypeScript in Jupyter notebooks. This extension will automatically install the necessary dependencies required to use TypeScript with Jupyter Extension.

    Tags: #typescript • jupyter • notebook

  • Unyson

    A WordPress framework that facilitates the development of WP themes

    Unyson is a framework for WordPress that facilitates the development of a theme.

    This framework was created from the ground up by the team behind ThemeFuse from the desire to empower developers to build outstanding WordPress themes fast and easy.

    Tags: #php • wordpress • theme

  • turnstyle

    🎟️A GitHub Action for serializing workflow runs

    GitHub Actions is an event-oriented system. Your workflows run in response to events and are triggered independently and without coordination. In a shared repository, if two or more people merge pull requests, each will trigger workflows without regard to one another.

    This can be problematic for workflows used as part of a continuous deployment process. You might want to let an in-flight deployment complete before progressing further with the next workflow. This is the usecase turnstyle action targets.

    Tags: #typescript • github-actions

  • shoulda-context

    Shoulda Context makes it easy to write understandable and maintainable tests under Minitest and Test::Unit within Rails projects or plain Ruby projects.

    Shoulda Context makes it easy to write understandable and maintainable tests under Minitest and Test::Unit within Rails projects or plain Ruby projects. It’s fully compatible with your existing tests and requires no retooling to use.

    Tags: #ruby • testing

  • nginx-config-formatter

    nginx config file formatter/beautifier written in Python with no additional dependencies.

    nginx config file formatter/beautifier written in Python with no additional dependencies. It can be used as library or standalone script. It formats nginx configuration files in consistent way, described below:

    • All lines are indented in uniform manner, with 4 spaces per level. Number of spaces is customizable.
    • Neighbouring empty lines are collapsed to at most two empty lines.
    • Curly braces placement follows Java convention.
    • Whitespaces are collapsed, except in comments and quotation marks.

    Tags: #python • nginx • formatter

  • potassium

    A Rails application generator by Platanus, inspired by Suspenders

    A Rails application generator from Platanus, inspired by Suspenders.

    Tags: #ruby

  • react-native-sglistview

    SGListView is a memory minded implementation of React Native’s ListView

    SGListView is a memory minded implementation of the React Native’s ListView.

    Tags: #javascript • react • react-native

subscribe via RSS