import React from 'react';
import { ScrollView, StatusBar, StyleSheet, Text, View } from 'react-native';
import { Colors } from 'react-native/Libraries/NewAppScreen';
import { Button } from './Button';
import { TestReportView } from './TestReport';
import { TestFixture } from './TestFixture';
import { useTestGroup } from './TestGroup';
import { TestWrapper } from './TestWrapper';
import {
BbsBls12381Sha256GenerateKeyPair,
BbsBls12381Shake256GenerateKeyPair,
BbsBls12381Sha256ProofGen,
BbsBls12381Shake256ProofGen,
BbsBls12381Sha256Verify,
BbsBls12381Shake256Verify,
BbsBls12381Sha256ProofVerify,
BbsBls12381Shake256ProofVerify,
} from './pairing-crypto';
import { fixtures } from '../__fixtures__';
export default function App() {
const testGroup = useTestGroup();
return (
<>
{'KeyPair Generation Test Cases'}
{'BbsBls12381Sha256 Signature Test Cases'}
{Object.values(fixtures.bls12381Sha256Signature).map((fixture) => (
BbsBls12381Sha256Verify(fixture)}
/>
))}
{'BbsBls12381Shake256 Signature Test Cases'}
{Object.values(fixtures.bls12381Shake256Signature).map((fixture) => (
BbsBls12381Shake256Verify(fixture)}
/>
))}
{'BbsBls12381Sha256 Proof Test Cases'}
{Object.values(fixtures.bls12381Sha256Proof).map((fixture) => (
BbsBls12381Sha256ProofVerify(fixture)}
/>
))}
{'BbsBls12381Shake256 Proof Test Cases'}
{Object.values(fixtures.bls12381Shake256Proof).map((fixture) => (
BbsBls12381Shake256ProofVerify(fixture)}
/>
))}
{'BbsBls12381Sha256 ProofGen Test Cases'}
{Object.values(fixtures.bls12381Sha256ProofValidCases).map((fixture) => (
BbsBls12381Sha256ProofGen(fixture)}
/>
))}
{'BbsBls12381Shake256 ProofGen Test Cases'}
{Object.values(fixtures.bls12381Shake256ProofValidCases).map((fixture) => (
BbsBls12381Shake256ProofGen(fixture)}
/>
))}
>
);
}
const styles = StyleSheet.create({
scrollView: {
backgroundColor: Colors.white,
minHeight: '100%',
},
body: {
backgroundColor: Colors.white,
minHeight: '100%',
},
sectionContainer: {
marginTop: 18,
paddingHorizontal: 24,
},
sectionTitle: {
fontSize: 16,
fontWeight: '400',
textAlign: 'center',
color: Colors.black,
marginBottom: 12,
},
sectionDescription: {
marginTop: 8,
fontSize: 18,
fontWeight: '400',
color: Colors.dark,
},
highlight: {
fontWeight: '700',
},
footer: {
color: Colors.dark,
fontSize: 12,
fontWeight: '600',
padding: 4,
paddingRight: 12,
textAlign: 'right',
},
});