Skip to content

Instantly share code, notes, and snippets.

View hectorcanto's full-sized avatar

Héctor Canto hectorcanto

View GitHub Profile
@hectorcanto
hectorcanto / networking.sh
Created July 4, 2019 13:08
[Network commands] Command to check open ports and the like #networkin #ops
sudo nmap --min-hostgroup 100 -F -sS -n -T4 $IP/32
nc
@hectorcanto
hectorcanto / psql.txt
Last active August 13, 2019 16:57
[postgres quick commands] some interesting commands for Postgres PSQL #db #postgres
ALTER SEQUENCE id_seq_player RENAME TO player_id_seq; # rename a sequence artifact
ALTER SEQUENCE model_id_seq RESTART WITH 1; # there is also select setval();
# Remove connections from a certain DB, useful for ill-finished test runs.
SELECT pid, pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname='DB_NAME';
@hectorcanto
hectorcanto / git_commands.sh
Last active March 19, 2019 11:43
[Git recurrent commands] Git commands that come useful from time to time #git
git rm --cached filename # Remove a file from repository without removing it locally
git reset --hard HEAD~2 # Delete last 2 commits, code included
git diff --name-only $commit # State the files changed in a commit
@hectorcanto
hectorcanto / .bashrc
Last active March 12, 2019 15:42
[Configure git aliases] A script to configure several git aliase #git
git_branch() {
git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
export PS1="\[\e]0;\u@\h: \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\[\033[00;33m\]\$(git_branch)\[\033[00m\]\$ "
alias g='git'
source /usr/share/bash-completion/completions/git
complete -o default -o nospace -F _git g
@hectorcanto
hectorcanto / pipenv.txt
Last active March 13, 2019 11:33
[Pipenv] pipenv commands #python #pip #pipenv
pipenv -h
pipenv install
pipenv --python3.7
pipenv shell
pipenv install --dev sphinx
pipenv install --dev sphinx --skip-lock
@hectorcanto
hectorcanto / test_capture_log.py
Created February 13, 2019 15:15
An example on how to capture and test logs with pytest.
import time
import logging
import sqlite3
import pytest
logger = logging.getLogger("ExampleDBClient")
RECONNECT_SLEEP = 30
RECONNECT_ATTEMPTS = 3
@hectorcanto
hectorcanto / test_exception.py
Last active March 28, 2019 14:02
[Test exceptions] Testing that your program respond as expected in negative situations is very important.These tests exemplify how to check that some code raises the right Exception. #python #pytest #exceptions
"""
Testing that your program respond as expected in negative situations is very important.
These tests exemplify how to check that some code raises the right Exception.
"""
# TODO BreakingPoint exception
import pytest
def raise_exception():
@hectorcanto
hectorcanto / aux_functions.py
Last active March 28, 2019 14:04
[Mock examples] Two examples that show how mock intercepts a call and does not let the mocked element execute its code. #python #pytest #mock
num_list = []
def add_num(num):
num_list.append(num)
return True
@hectorcanto
hectorcanto / conftest.py
Last active April 26, 2021 21:36
[Conftest example with fixtures] A Pytest conftest example with a function scoped fixture, with autouse. The code will be executed after every function, since it only has logic after the yield. #python #pytest
"""
This example has not been tested. Use it as a reference only.
"""
import psycopg2
import pytest
USER = "postgres"
PASS = None
@hectorcanto
hectorcanto / factories.py
Created February 8, 2019 16:02
DictFactory for APIs derived from the DB Model Factory
# -*- coding: utf-8 -*-
import random
import string
import unicodedata
from uuid import uuid4
from functools import partial
from _datetime import datetime, timezone
from factory import Factory, Sequence, LazyFunction as LF, LazyAttribute as LA
from factory.fuzzy import FuzzyChoice as Choice