Skip to content

Instantly share code, notes, and snippets.

View danielsiwiec's full-sized avatar

Dan Siwiec danielsiwiec

View GitHub Profile
@danielsiwiec
danielsiwiec / gist:20deba324e85f3d61088
Last active August 29, 2015 14:17
List and reboot AWS instances using Client class
require 'aws-sdk'
require 'json'
creds = JSON.load(File.read('creds.json'))
creds = Aws::Credentials.new(creds['AccessKeyId'], creds['SecretAccessKey'])
ec2 = Aws::EC2::Client.new(region:'us-west-1',credentials:creds)
instance_ids = []
ec2.describe_instances['reservations'].each do |reservation|
@danielsiwiec
danielsiwiec / gist:e91a24249d45b9d5df01
Created March 13, 2015 06:54
List and reboot AWS instances using Resource class
require 'aws-sdk'
require 'json'
creds = JSON.load(File.read('creds.json'))
creds = Aws::Credentials.new(creds['AccessKeyId'], creds['SecretAccessKey'])
ec2 = Aws::EC2::Resource.new(region:'us-west-1',credentials:creds)
ec2.instances.each do |instance|
puts "ID: #{instance.instance_id} State: #{instance.state.name} Hostname: #{instance.public_dns_name}"
using Toybox.Application as App;
using Toybox.WatchUi as Ui;
using Toybox.Graphics as Gfx;
class WaypointsApp extends App.AppBase {
function initialize() {
AppBase.initialize();
}
public class TaxCalculatorTest {
@Test
public void shouldCalculateCaliforniaTaxOnOrderWithSingleItem() {
var singleItemOrder = Order.withItems(Item.withCost(50)).withCustomerLocation('CA');
var tax = TaxCalculator.calculate(singleItemOrder);
assertThat(tax).isEqualTo(3.625);
}
@Test
@danielsiwiec
danielsiwiec / PaymentServiceTest.java
Created October 25, 2020 21:25
Service Test (point-to-point)
@SpringBootTest
public class PaymentServiceTest {
@Autowired
private RestTemplate restTemplate;
@Test
public void shouldProcessPaymentForValidOrder() {
var validOrder = Order
.withCustomerId(123)
@danielsiwiec
danielsiwiec / PaymentServiceTest.java
Created October 25, 2020 21:49
Service Test (event-driven)
@SpringBootTest
@EmbeddedKafka(topics = {"orders", "payments"})
public class PaymentServiceTest {
@Autowired
private Producer<Order> orderProducer;
@Autowired
private Consumer<Payment> paymentConsumer;
@danielsiwiec
danielsiwiec / OrderProcessingTest.java
Created October 25, 2020 22:36
End to End Test (synchronous)
public class OrderProcessingTest {
@Autowired
RestTemplate restTemplate;
@Test
public void shouldProcessValidOrder() {
var validOrder = Order.withItems(Item.id("2fa2ac")).withCustomerId("123");
// submit Order
@danielsiwiec
danielsiwiec / OrderProcessingTest.java
Created October 25, 2020 22:47
End to End Test (asynchronous)
public class OrderProcessingTest {
@Autowired
RestTemplate restTemplate;
@Test
public void shouldProcessValidOrder() {
var validOrder = Order.withItems(Item.id("2fa2ac")).withCustomerId("123");
// submit Order
@danielsiwiec
danielsiwiec / .zshrc
Created December 1, 2020 07:04
basic .zshrc
ZSH_THEME="clean"
plugins=(git)
alias venv="python3 -m venv .venv && source .venv/bin/activate"
source ~/.oh-my-zsh/oh-my-zsh.sh
@danielsiwiec
danielsiwiec / main.py
Last active December 23, 2020 02:09
esp8266-thermostat
props = load_props()
connect_to_wifi(props['wifi_sid'], props['wifi_pass'])
mqtt = MQTT(props['client_id'], props['iot_endpoint'], props['iot_topic'])
thermistor = Thermistor()
while True:
temp = thermistor.get_temp()
mqtt.send({'temp': temp})
deep_sleep_seconds(props['sleep_seconds'])