Alfred Nutile
    • Posts
    • Mocking, Python, Pytest
    • Windows Dev Box Try 3 2020
    • Using Python Lambda behind and ALB
    • Suggestions Around Building a Good Development Team in Parallel to Building a Good Product
    • Lambda Tips
    • Mocking in Python
    • PHP Xdebug Visual Code
    • Cognito and OAuth
    • PHPUnit CodeCoverage
    • Deploying Fargate
    • How to Troubleshoot and Issue
    • Bitbucket Pipeline
    • JSONEditor, Vue and Vuex
    • Laravel Filter Scope on a Model
    • Query Strings, Vue and Bootstrap Active Tab
    • Valet Laravel 7.1 and 7.2
    • Python3 Fixtures
    • PHPStan Setup
    • Vuex External File
    • Simple API_Token Auth for VueJS Components and Laravel
    • Dusk Screenshots to S3 of Failing tests
    • Windows Dev Box Try 2 2018
    • Laravel Queue Restart and 'Why are my changes not showing up'
    • Lambda and Github Webhooks
    • Query Strings and VueJS
    • Debugging AWS SAM
    • wip Fargate and Laravel
    • Getting Started with Orchestra Testbench for Laravel Package Development
    • GroupBy not Sorting by latest
    • BrowserSync and Laravel
    • Troubleshoot Laravel Socialite and Github login
    • Wrapping Libraries in Services JS
    • Passing from Blade to VueJs
    • Laravel and AWS Rekognition
    • Docker Laravel and Cron
    • Pusher and Laravel Updates
    • Dusk and Production (with Dusk disabled)
    • Testing Laravel API, Spark with Authentication
    • Example of Making Documentation in Markdown with PDF Output
    • Serverless Python and Example App WIP
    • VueJS Transition Helper
    • Laravel Asset Notes WIP
    • PostMark SMTP for sending Notifications and Password Resets
    • Dusk Notes
    • Continuous Delivery in a NutShell
    • Laravel Shift and Your Day Job
    • Wrapping JSONEditor in Vue as Well as Laravel Blade
    • Laravel, Dusk and Valet
    • WIP AWS Batch and Workers with Laravel
    • Mocking Models OutSide of Laravel
    • Versions and Branching a Library
    • Serverless and Custom Tags for Resources
    • Setting Up My Mac
    • Serverless, AWS API Gateway and Authentication
    • IronFunctions and PHP
    • Testing a trait with PHPUnit
    • Machine to Machine Laravel Passport
    • Meetings and Cross TimeZone Teams
    • Dusk and Homestead
    • Simple Slack Trait Get Request and return Response
    • We Code in the Context of our Quoting
    • Instantiate Request for Testing
    • Load Testing With Behat
    • Example Job Format for Queue
    • LarScanner simple foundation for building a good Laravel Security Scanner
    • Super Simple Sending Messages to Slack from Laravel
    • Pusher and PHP 'Error Failed to connect to Pusher'
    • Model Boot Events
    • Queue onConnection
    • Guzzle 5 or 6 or ????
    • Chrome update equals Behat Fail
    • Laravel and Casting 'JSON_UNESCAPED_UNICODE' Data
    • Laravel 5.x Cookbook Chat Area
    • Throttle Password Reset
    • Laravel Throttle Feature using IP address as Key
    • Troubleshooting a Failed Build with Codeship and SauceLabs
    • Amazon Machine Learning
    • Mockery Behat and Laravel
    • Adding Basic Auth to Forge
    • Uploading Images in Behat both at Domain Level and UI Level
    • Behat Laravel Domain Testing Inside Out
    • Keeping a Controller Method Simple
    • Example of Mixing it up Behat BDD and PHPUnit
    • Homestead and Auto Setup Hosts File
    • API Token Based Access Laravel 5.1 (Yet another article on this)
    • Contract Testing
    • Getting Going Quickly Windows, Behat and Selenium
    • AWS, S3 Storage and limited Visibility
    • Behat and Uploading Files to a Form Even on Remote Selenium2 Servers
    • Laravel, PHPUnit, Require_Once on Routes
    • Remote Behat Testing with Laravel
    • CMS or NOT CMS
    • Feature Flags In Laravel
    • Install Webdriver to get testing with Behat and Javascript
    • Slack Custom Commands and Laravel to Make an American to British Translater
    • Then Benefits of Building a Clickable POC as a Developer
    • Put It All Into Version Control Even Composer!
    • Why Side Projects are Good For Me
    • Do I Really Need This Route Anymore?
    • Logout User After Inactivity Laravel and Milddleware
    • CentOS or RedHat and Laravel
    • Quick Tip Forcing More Complex Passwords in Laravel
    • Image Uploads, Laravel, Angular and Flow.js
    • Simple Example of Making Code Easier to Read
    • Spark Setup Issue
    • Adding Expose IDS to Laravel MiddleWare
    • Note To Self: A VirtualBox machine with the name 'homestead' already exists.
    • Laravel and Angular Widgets e.g. Non SPA (Single Page Application) Pattern
    • Laravel 5.1 and Oauth
    • Talking to the Methods Not the Properties
    • Using your project docs inside the application
    • Behat for Product Owners
    • HasMany Through a Many to Many
    • Adding RSS to Your Site
    • Bower and Elixir
    • Quick way to Request Json from Angular and return from Laravel
    • Laravel 5.1 Behat and Codeship
    • Conventions to Help Minimize your ENV File
    • Start to end Billing using Stripe, Cashier and Laravel 5.1
    • Codeship and Laravel for Continuous Integration
    • Logging in Iron.io Workers
    • Writing Commands and Scheduling in Laravel 5.1
    • Easily Create Fixture Data from Remote Services and Refresh Mock Data
    • Adding Cache to your Laravel Site
    • Iron.io and Lumen
    • Quick way to mock data for Behat in Laravel
    • Code for making a Shortcut tool for your App
    • Using Faker and ENV vars with Behat
    • Using a BurnDown Chart to Pace Yourself
    • Behat and PhantomJs
    • PHP Error: Maximum function nesting level of '100' reached, aborting Behat
    • Iron.io Laravel and Workers, Microservices
    • Multi Domain Nginx Redirect
    • Sending Dates to Angular from Laravel
    • Dealing with Oauth2 Server and Laravel for both a local app login and for remote apps using Lucadegasperi/oauth2-server-laravel
    • Simple Look at Laravel Events
    • Laravel-Flysystem and Creating Time Limited Public Urls on S3
    • Laravel Behat and Selenium
    • Linux, Behat and installing ChromeDriver
    • Sqlite and Laravel
    • Timing PHPUnit Tests
    • Reusable UI/API CRUD Laravel and Angular
    • Laravel Blade and Angular brackets
    • Angular History Based BreadCrumbs
    • Embed Template Data in View (Angular, Laravel)
    • Quick fixture data and mocking external APIs
    • Mocking Queue Service for faster Behat Testing
    • Redirecting back to original Angular.js destination from Laravel Auth
    • Docker, MailCatcher and Laravel
    • PHP quick fixture data for phpunit testing
    • Nginx force SSL
    • Moving Forge Deploy Script to Envoy
    • Laravel and Angular Time/Date Display
    • Laravel 4.2 and Dotenv to set environment
    • Speeding up PHPunit tests and Behat in Laravel for Database refreshes
    • Angular Pusher Factory to Centralize Code (also using Laravel to set constants and properties)
    • CSRF Tokens and Angular.js
    • Temporary Auth Updates L5
    • Chrome and Behat
    • Design Guide - Controllers, Services and IOC
    • Multi Threaded Queue Processing
    • Team Style Guides and Mind Set
    • Sorting related models in Laravel
    • Behat for testing RESTful APIs
    • Boris REPL and you Applicatoin (Silex in this case)
    • SSL and Homestead
    • Drush and Homestead Vagrant Box
    • Polymorphic relationship Laravel
    • Quick way to traverse a nested php arrray
    • Using VCR for PHP API Testing
    • Saucelabs PHP Client
    • Many to Many Polymorphic Relations from Laravel to Angular and back
    • Laravel Sentry and UUID
    • Laravel Homestead and MailCatcher
    • Laravel Homestead and Beanstalkd Console
    • Restangular and nested responses
    • Behat Test more than number of elements
    • When you have to use Angular inside of Drupal
    • Transforming Output from the Database to the View/REST layer
    • Showing nested relationships details
    • Simple Laravel CMS Example
    • Quick Gulp file to run php-unit tests
    • Laravel and non email authentication
    • Using Beanstalkd to Schedule the release of a post in Laravel
    • Behat Seed Repo
    • Using Dot Env files to manage settings
    • Using Scopes in Laravel
    • Quick way to add text to a hidden ckeditor field
    • Github CLI to get Teams and Members of an Org
    • Mink Assertions
    • Drupal and Composer install or update
    • Adding Column using sqlite caused error 'Cannot add a NOT NULL column with default value NULL'
    • php artisan migrate:reset not working
    • Angular and Scope - or - How not to waste time figuring out why a scope value is not 'working'
    • Behat Checkbox
    • Adding Markdown Editor to your Blog/CMS
    • Running multiple tasks asynchronously with Drush, Drupal and MT
    • Building the UI first with Angular, Mocked Data and REST
    • Behat Vagrant install and local testing
    • GitWrapper Per Page settings KnpLabs / php-github-api
    • Angular and Laravel Partials
    • Using Github Pages for your help docs
    • Twig and Drupal 7
    • Drupal Services and Instantiating a Class
    • Guard, Laravel and phpunit
    • Angular.js, CKEditor, and REST including file uploads
    • Saucelabs Timeout
    • Angular Drupal and CSRF
    • Ng-if and Scope
    • Mocking drupal database queries
    • Ubuntu 12.04 and PHP 5.4
    • Laravel Project Management Site
    • Angular Watching a model and it's filters
    • Behat Resources
    • Nesting Laravel 4 Routes
    • Exploring Code and Laravel
    • Node.js error
    • Behat and bad HTML
    • Behat Mink and using Javascript / jQuery to test attributes
    • Keep it (functions/methods) small and simple
    • PHPSH
    • Behat and Drupal episode 1
    • Quick Script to update Heroku database
    • Bash History
    • Drupal FAPI Validation Error
    • Heroku in Heroku
    • Drush and Features-Export
    • Hosting is Dead?
    • HerokuApps and Multiple Domains
    • Global Redirect module after spaces / purl install does not
    • Ruby on Rails with CMS and other fun stuff
    • Paperclip and S3 and Ckeditor
    • RubyMine and BetterErrors
    • Installing mysql2 on a mac
    • NDA
    • Capistrano for non-rails sites
    • Angular Seed Testing Setup
    • Angular.js Ticket System
    • Paperclip and S3
    • Technologies for a Saas
    • My first Rails site for the masses.
    • Refinery CMS and Twitter Bootstrap
    • Vagrant and Laravel
    • Questions that may come in handy when interviewing
    • Hack For Change Challenge
    • Bootstrap Generator Gem Ruby on Rails
    • Using headless tests with Mink and Behat
    • ActiveAdmin Rails
    • Making lists from acts_as_taggable
    • Javascript Based Product Viewer
    • jQuery Address
    • CORS and Laravel
    • Great tip on Git and Jenkins to auto deploy
    • Going Angular.js
    • DrupalCamp Western Mass
    • Introduction
    Mocking, Python, Pytest

    Ok this is going to be a collection of notes to self. This post does a good job of summing up some mock patterns with PyTest. I then had to mock the Snyk client which depended on the Requests library. I chose not to mock the requests library but the methods in the snyk library. The thing was the method I mocked returned the “Response” object and I wanted to use the json() feature of that object/class to return the results.

    March 4, 2021 Read
    PHPUnit CodeCoverage

    PHPUnit CodeCoverage PHPUnit CodeCoverage There is a ton of information about your code PHPUNit CodeCoverage can provide. At the root just making sure your coverage is at a certain level and if not where is it lacking. With it’s xml output I use a script found here to check during our TravisCI builds if the code is meeting a required level. Here is a gist of that script here and here is the .

    January 9, 2019 Read
    Python3 Fixtures

    Just a reminder using pickle I can easily make fixtures for testing. When I get results from AWS SDK for example I can just import pickle with open("fixtures/describe_task_defination.pickle", 'wb') as fixture: pickle.dump(self.stored_state_to_save, fixture) Then when I want to feed it back in my test import pickle from unittest import TestCase from unittest.mock import patch from unittest import mock import pickle from task_image import TaskImage def getFixture(name): with open("fixtures/" + name, 'rb') as fixture: return pickle.

    August 10, 2018 Read
    Dusk Screenshots to S3 of Failing tests

    I can be really annoying to troubleshoot a failed test in Dusk when using CI systems. What I ended up doing was setting up my project to send these files to S3 on fail. Here are the steps Setup You App This is just S3 storage so make sure you have a bucket and a folder in the bucket to write to. Basically for AWS you make an IAM with a key and secret and let it read/write to this folder.

    June 26, 2018 Read
    Getting Started with Orchestra Testbench for Laravel Package Development

    The goal of this article will allow one to setup a stand alone package working with it’s own tests and has access to all of the normal Laravel workflows outside of Laravel. So you can build it using the easier conventions and helpers Laravel offers. Since my work will include database usage I will grab both packages: composer require --dev "orchestra/testbench:<=3.5" "orchestra/database:v3.5.0" I will setup my composer.json after this as such:

    April 1, 2018 Read
    Testing Laravel API, Spark with Authentication

    Just a reminder to self, if I want to test an API I made and need to pass and api_token <?php namespace Tests\Feature; use Tests\TestCase; use Illuminate\Foundation\Testing\WithFaker; use Illuminate\Foundation\Testing\RefreshDatabase; use App\Quote; use Laravel\Spark\Repositories\TokenRepository; class QuoteControllerTest extends TestCase { use RefreshDatabase; public function testGettingAQuoteUsingToken() { $user = factory(\App\User::class)->create(); $team = factory(\App\Team::class)->create(); $team->users()->attach($user->id, ['role' => "member"]); $quote = factory(\App\Quote::class)->create([ 'team_id' => $team->id, 'posted_by' => $user->id ]); $token = new TokenRepository(); $token = $token->createToken( $user, 'get_quote', [] )->token; $this->json('GET', "/api/teams/{$team->id}/quotes/random?

    February 4, 2018 Read
    Laravel, Dusk and Valet

    By default I set my phpunit.xml to use test as my database: <php> <env name="APP_ENV" value="testing"/> <env name="CACHE_DRIVER" value="array"/> <env name="SESSION_DRIVER" value="array"/> <env name="MAIL_DRIVER" value="log"/> <env name="QUEUE_DRIVER" value="sync"/> <env name="DB_DATABASE" value="test"/> <-- this line here </php> But with Valet and Dusk this led to the browser using my default database and not test but the PHPUnit test itself was using test so the user I created and logged in as was not available in the browser.

    September 28, 2017 Read
    Testing a trait with PHPUnit

    In an effort to start recording test coverage using vendor/bin/phpunit --coverage-text --coverage-clover=coverage.clover I had some issues with traits being seen. I tried numerous approaches my default being just to Use the trait in the test class. I ended up with this as I found some online info about trait testing here that references a now missing post by Sebastian Bergman the maker of PHPUnit <?php use Symfony\Component\Yaml\Yaml; /** * Test class for {@see PfawsYaml}.

    June 8, 2017 Read
    Instantiate Request for Testing

    When I need to make a request for a test in which the Class is expecting a \Illuminate\Http\Request I can do this for a file based or non file based request. /** * @Then I should be able to upload an image file */ public function iShouldBeAbleToUploadAnImageFile() { $request = new \Illuminate\Http\Request(); $file = new \Symfony\Component\HttpFoundation\FileBag(); $path = base_path('tests/fixtures/example_profile.jpg'); $originalName = 'example_profile.jpg'; $upload = new \Illuminate\Http\UploadedFile($path, $originalName, null, null, null, true); $file->set('profile_image', $upload); $request->files = $file; $this->repo = new \App\Repositories\ProfileRepository(); $results = $this->repo->uploadUserProfileImage($request); PHPUnit::assertTrue($results, "Repo did not return true"); PHPUnit::assertTrue(File::exists(public_path('storage/' .

    February 28, 2017 Read
    Contract Testing

    Sometimes we need to make sure external APIs have not changed. Some of those we have control over some of those we do not. Either way we can run tests daily, weekly or as needed, outside of our tests we run with every push to Github, that will make sure this API is still delivering what we expect. This video gave me some good tips on this one being to keep your Contract tests outside of your Domain Logic.

    May 27, 2016 Read
    Codeship and Laravel for Continuous Integration

    Getting going on Codeship and Laravel is pretty easy. Once you setup codeship to work with your github account just pull in your repo and set your Testing scripts as follows. (they have a ui for ENV variables as well) Codeship Testing Settings [easier copy paste bottom of article] You can do this in their UI as well. But at this point I am Setting up the composer token for any private repos that application might have Setting up .

    June 7, 2015 Read
    Easily Create Fixture Data from Remote Services and Refresh Mock Data

    Oops Codeship and Laravel is here Easily Create Fixture Data from Remote Services and Refresh Mock Data We have integration tests that hit remote apis like Github, S3, DynomoDB, our own APIs etc and we do not want to hit those during out tests but we also want to make sure we have the real data. So when one of those APIs change then our mock data can be refreshed to see if our systems really work with it.

    May 27, 2015 Read
    • ««
    • «
    • 1
    • 2
    • »
    • »»
    ${Title}

    ${Summary}

    March 4, 2021 Read
    Navigation
    • About
    • Projects
    • Recent Posts
    • Achievements
    Contact me:
    • Email: me@alfrednutile.info
    • Phone: +1.413.230.4767

    Toha
    ICONS8
    Powered by Hugo Logo