Python testing reference
This document is a reference for common testing patterns in a Django/Python project using Pytest.
Contents:
#!/usr/bin/env bash | |
# | |
# Print a title of the current pull request's commits. | |
# | |
# - For single commit pull requests, this prints the subject of the commit. | |
# | |
# - For multi-commit pull requests, this uses OpenAI's REST API to digest the | |
# commit messages of the pull request into a single sentence. | |
# | |
# Requires an OPENAI_API_KEY env var to authenticate requests - see: |
#!/usr/bin/env python | |
# | |
# Print out a summary of the pull request. | |
# | |
# This combines the commit messages and removes the hard wrapping so the text renders better in | |
# Github's UI. The output won't be suitable as is, but provides a good start for moulding into a | |
# good description. | |
import subprocess |
#!/usr/bin/env bash | |
# | |
# Print a summary of the current pull request's commits. | |
# | |
# Requires an OPENAI_API_KEY env var to authenticate requests - see: | |
# https://beta.openai.com/docs/api-reference/authentication | |
# Commit selection variables. | |
TARGET_BRANCH=master |
#!/usr/bin/env bash | |
# | |
# Print the users who have access to a given 1Password item. | |
# | |
# Usage: | |
# | |
# 1pw-item-users "$ITEM_NAME" | |
# | |
# Note, the `op` tool must be authenticated before this command is run. |
// To use this, create a new Apps Script project and paste this script in. | |
// https://developers.google.com/apps-script | |
function FetchReport() { | |
// Define a Gmail search query. | |
var searchQuery = "cluedo after:2022-01-01" | |
// Define a predicate that determines when to stop looping. | |
function shouldWeKeepLooping(thread) { |
#!/usr/bin/env python | |
# | |
# Script to wrap JSON front-matter in markdown files with `---` delimiters. | |
# | |
# This allows Prettier to be used on the markdown file (and it won't try and format the JSON front | |
# matter). | |
# | |
# I needed this to convert old Hugo markdown files that had JSON front-matter. | |
import os | |
import sys |
#!/bin/bash | |
# | |
# Script that opens the Github pull request search page filtered to show closed pull | |
# requests from the last week, from members of a specified set of users. | |
# | |
# This can be useful for team leads when writing progress reports. | |
# Config | |
# ------ |
This document is a reference for common testing patterns in a Django/Python project using Pytest.
Contents:
import datetime | |
import pytz | |
from django.utils import timezone | |
from dateutil import tz | |
# This test passes. | |
def test_pytz_vs_dateutil_timezones(): | |
timezone_name = "Europe/London" | |
# Start with a naive dt. |
# Python start-up file | |
# -------------------- | |
# Ensure a PYTHONSTARTUP environment variable points to the location of this file. | |
# See https://docs.python.org/3/using/cmdline.html#envvar-PYTHONSTARTUP | |
# Always have pp available | |
from pprint import pprint as pp | |
# Pre-emptively import datetime as I use it a lot. | |
import datetime |