Skip to content

Instantly share code, notes, and snippets.

View ovpv's full-sized avatar
👀
waiting for the right opportunity

Vishnuprasad Venugopal ovpv

👀
waiting for the right opportunity
View GitHub Profile
@ovpv
ovpv / App.spec.tsx
Created December 15, 2020 09:37
Jest Mock: Test file where moment js method mock is defined and used in expect statement
import { shallow, configure } from "enzyme";
import React from "react";
import App from "../App";
import Adapter from 'enzyme-adapter-react-16';
//define mock for moment lib
const diff = jest.fn();
const momentObj = () => ({
diff
})
@ovpv
ovpv / App.tsx
Last active December 15, 2020 09:35
Jest Mock: App file where moment js is used
import React, { useState } from "react";
import "./styles.css";
import moment from "moment";
export default function App() {
const [date, setDate] = useState("");
const [age, setAge] = useState(0);
const calculateAge = () => {
console.log('diff called');
const calcAge = moment().diff(date, "years");
@ovpv
ovpv / alert-demo.ts
Created January 1, 2020 06:52
Using setMessage method in alert component
import { Component } from '@angular/core';
import { AlertController } from '@ionic/angular';
@Component({
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss']
})
export class HomePage {
alert: any;
@ovpv
ovpv / App.js
Last active September 29, 2019 18:29
App.js file in React Native which contains the KeyboardAvoidingView component to avoid keyboard overlapping the input fields
import {KeyboardAvoidingView, ScrollView, Platform} from 'react-native';
export default class App extends Component{
render(){
return(
<SafeAreaView>
<KeyboardAvoidingView behavior={Platform.Os == "ios" ? "padding" : "height" } enabled>
<ScrollView>
/* add your Screen Ui Components here */
</ScrollView>
@ovpv
ovpv / app.scss
Created September 2, 2019 14:18
css classes for showing password strength in meter component
.progress{
height: 10px;
width: 0%;
background-color: transparent;
}
.progress.low{
background-color: red;
color:red;
width: 10%;
@ovpv
ovpv / meter.js
Created September 2, 2019 14:04
Meter component to show the password strength
class Meter extends React.Component{
constructor(){
super();
this.state={
status: "low"
}
}
componentDidUpdate(prevprops,state){
this.changeStatus(this.props.value);
}
@ovpv
ovpv / password.js
Created September 2, 2019 13:43
Password component definition
class Password extends React.Component{
constructor(){
super();
this.state = {
value: 0,
password:""
}
}
updatePasswordvalue = (ev) => {
this.setState({
@ovpv
ovpv / app.js
Created September 2, 2019 13:33
app defined for password meter strength
/*
Password component and Meter components defined here
*/
class Application extends React.Component {
render() {
return (
<div class="container">
<h2 className="text-center mt-5">Password Meter</h2>
<div className="d-md-flex justify-content-center mt-5"><Password meter={true} /></div>
@ovpv
ovpv / header.js
Created August 7, 2019 10:36
header Component with menu links
import React, { Component,Fragment } from "react";
import { MenuLinks } from "../../../routes";
export default class Header extends Component {
render() {
return (
<Fragment>
{MenuLinks.map((menu, index) => (
<Link to={menu.url}>{menu.menuText}</Link>
@ovpv
ovpv / app.js
Created August 7, 2019 10:30
Router switch for rendering page components
import React, { Component, Fragment } from "react";
import { Switch, Route } from "react-router-dom";
import Routes from "../routes";
import Header from "./components/header/header";
export default class App extends Component {
render() {
return (
<Fragment>
<Header />