Skip to content

Instantly share code, notes, and snippets.

View gist:56617f52e3b3f437aea52d5dc534075a
### Keybase proof
I hereby claim:
* I am batou99 on github.
* I am batou99 (https://keybase.io/batou99) on keybase.
* I have a public key ASAM_UF6Qy0vvaGS9fQqtW5W5ZLf93uH4aOVbPozs4kcVQo
To claim this, I am signing this object:
View H2ToDoRepositoryIntegTest.java
package com.manning.gia.todo.repository;
import com.manning.gia.todo.model.ToDoItem;
import org.junit.Before;
import org.junit.Test;
import java.util.List;
import static org.junit.Assert.*;
View H2ToDoRepository.java
package com.manning.gia.todo.repository;
import com.manning.gia.todo.model.ToDoItem;
import java.sql.*;
import java.util.ArrayList;
import java.util.List;
public class H2ToDoRepository implements ToDoRepository {
@Override
View InMemoryToDoRepositoryTest.java
package com.manning.gia.todo.repository;
import com.manning.gia.todo.model.ToDoItem;
import org.junit.Before;
import org.junit.Test;
import java.util.List;
import static org.junit.Assert.*;
View CHANGELOG_AND_TAGGING.md

Why

Keeping a changelog and tagging the releases serve various purposes

Easy identification

It's easy to identify the differences between versions (e.g. Production vs Staging) so everyone is aware of what is running at a server just looking at the CHANGELOG.md

Helping the Product Team

Sometimes the product team may not be fully aware of what are we deploying or what the differences are between what is deployed vs what we are testing. The CHANGELOG.md will be easier to understand than checking commit messages. Commit messages are much more technical oriented and written for developers instead of customers/managers.

Visibility

View CHANGELOG_AND_TAGGING.md

Steps to update the CHANGELOG

  1. When branching out, edit the CHANGELOG.md and add an "Unreleased" section on top
  2. The section will have subsections (in needed) for
    • Added
    • Changed
    • Deprecated
    • Removed
    • Fixed
    • Security
View my_list.ex
defmodule MyList do
def flatten([]), do: []
def flatten([head | tail]), do: flatten(head) ++ flatten(tail)
def flatten(x), do: [x]
end
defmodule MyListTest do
use ExUnit.Case
View flatten.ex
defmodule Flatten do
def flatten([]), do: []
def flatten([head | tail]), do: flatten(head) ++ flatten(tail)
def flatten(x), do: [x]
end
defmodule FlattenTest do
use ExUnit.Case
View CDN Kit
<!-- Bootstrap -->
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" rel="stylesheet">
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<!-- Font Awesome -->
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet">
<!-- Bootlint-->
<script src="//maxcdn.bootstrapcdn.com/bootlint/0.11.0/bootlint.min.js"></script>
View locusfile.py
from locust import HttpLocust, TaskSet, task
from random import randint
class UserBehavior(TaskSet):
HEADERS = { "Accept": "application/vnd.myvendor+json; version=2" }
TOPICS = [452, 459, 460, 461, 462, 467, 470, 477, 479, 521, 524, 582, 591, 609, 506, 510, 513, 514, 515, 520, 525, 526, 527, 529, 530, 531, 532, 133, 282, 429]
@task(2)
def topics(self):
page = randint(1,10)
You can’t perform that action at this time.