Skip to content

Instantly share code, notes, and snippets.

View simon-saliba's full-sized avatar

Simon Saliba simon-saliba

  • Paris
View GitHub Profile
@simon-saliba
simon-saliba / CheckoutForm.tsx
Last active July 12, 2021 20:54
Checkout form component
import React, { useEffect, useState } from "react";
import { CardElement, useStripe, useElements } from "@stripe/react-stripe-js";
import { StripeCardElementChangeEvent, StripeError } from "@stripe/stripe-js";
import "./styles.css";
import CardField from "../CardField/CardField";
import Field from "../Field/Field";
import SubmitButton from "../SubmitButton/SubmitButton";
import ErrorMessage from "../ErrorMessage/ErrorMessage";
const CheckoutForm = () => {
@simon-saliba
simon-saliba / App.tsx
Created June 17, 2021 16:36
App root file
import React from "react";
import { Elements } from "@stripe/react-stripe-js";
import { loadStripe } from "@stripe/stripe-js";
import CheckoutForm from "./components/CheckoutForm/CheckoutForm";
const stripePromise = loadStripe(
"pk_test_51IyLknBE4nCaoI6V9xgxz1wcOou9Yx0NItfAkpgGffI3AALNVAZhl8Dp4fGtQs1XsASywXRiIapdjQyofsPsqyOy00uEgR8vBV"
);
const App = () => {
@simon-saliba
simon-saliba / app.py
Last active July 16, 2021 12:51
stripe-connect-tutorial: API source code
import json
import os
import stripe
stripe.api_key = "sk_test_51IyLknBE4nCaoI6V9vCpJK9vWpDS2jjX5PYm2rGXHIsBt56T7RNvjr324jFM0LWvdV2ZRttlv7Gy1bFJW51zwihp00z7xAoQ6r"
from flask import Flask, render_template, jsonify, request
app = Flask(__name__, static_folder=".", static_url_path="", template_folder=".")
@simon-saliba
simon-saliba / index.js
Created April 10, 2021 16:50
Github Repo Number retriever with Redis
const express = require('express');
const fetch = require('node-fetch');
const redis = require('redis');
const PORT = process.env.PORT || 5000;
const REDIS_PORT = process.env.REDIS_PORT || 6379;
const client = redis.createClient(REDIS_PORT);
const app = express();
@simon-saliba
simon-saliba / index.js
Created April 10, 2021 16:31
Github Repo Number Retriever Without Redis
const express = require('express');
const fetch = require('node-fetch');
const PORT = process.env.PORT || 5000;
const app = express();
// Set response
function setResponse(username, repos) {
return `<h2>${username} has ${repos} Github repos</h2>`;
@simon-saliba
simon-saliba / stringcalculator.py
Created March 28, 2021 00:27
String Calculator Mock Logging Test Pass
import logging
def add(str):
if(len(str) == 0) :
logging.info(0)
return 0
else:
numbers_str = []
numbers_comma_split = str.split(',')
sum_result = 0
for i in range(len(numbers_comma_split)):
@simon-saliba
simon-saliba / stringcalculator-test.py
Created March 28, 2021 00:20
Writing Mock Test for logging info to file
import unittest
from unittest.mock import patch
from stringcalculator import add
class TestStringCalculator(unittest.TestCase):
def test_add_empty_string_return_zero(self):
self.assertEqual(add(''), 0)
def test_add_one_number_will_return_itself(self):
@simon-saliba
simon-saliba / stringcalculator.py
Created March 27, 2021 22:31
Pass 4 - Handling a random number of numbers
def add(str):
if(len(str) == 0) : return 0
else:
numbers_str = []
# Split string by comma
numbers_comma_split = str.split(',')
sum_result = 0
for i in range(len(numbers_comma_split)):
sum_result = sum_result + numbers_comma_split[i]
return sum_result
@simon-saliba
simon-saliba / stringcalculator-test.py
Created March 27, 2021 22:27
Testing Add function can support a random number of numbers
import unittest
from stringcalculator import add
class TestStringCalculator(unittest.TestCase):
def test_add_empty_string_return_zero(self):
self.assertEqual(add(''), 0)
def test_add_one_number_will_return_itself(self):
self.assertEqual(add('2'), 2)
@simon-saliba
simon-saliba / stringcalculator.py
Created March 27, 2021 22:23
Refractoring Pass 3
def add(str):
if(len(str) == 0) : return 0
else:
numbers_comma_split = str.split(',')
if(len(numbers_comma_split) == 1) : return int(str)
else:
return numbers_comma_split[0] + numbers_comma_split[1]