Advertisement · 728 × 90

Posts by ApeWorX Ltd.

To see the second part of our coverage series, follow our @viamirror account or join our discord to get early access to all our blogs (and also a special treat)

discord.com/invite/apeworx

2 years ago 0 0 0 0

But this is only the ELI5!

If you want to know what the difference is between things like Statement, Branch, and Condition coverage then read through the full post to know everything

2 years ago 0 0 1 0

It's an incredibly useful part of your toolset, but you need to pair it with fuzzing, 3rd party review, and just spending time finding unorthodox attack vectors that no tool could predict to truly lower the chances of your project becoming the next front page headline

2 years ago 0 0 1 0

So very high coverage is a necessary but not sufficient condition for having good unit tests

It's a nice thing to have, but not necessarily the end goal

2 years ago 0 0 1 0

High coverage just shows that your code does something during the test, not what that it is doing the right thing

Relying on it as a way to know if something is secure is the path to getting hacked by a teenager in a basement blaring dubstep

2 years ago 0 0 1 0

100% coverage doesn't mean that your code was fully tested, bulletproof, and can survive North Korean hackers

It just means that all the lines of your source code were executed at least once during your test suite

2 years ago 0 0 1 0

So if you have 80% coverage then 80% of your code is being exercised by whatever tests are running on your code base.

Generally, the more % covered the better

However....

2 years ago 0 0 1 0

So wtf is coverage, does it even matter, and do you need to achieve 100% coverage or will your code explode?

Well yes, but also no, but also kinda

Lets step back and cover the basics

"Code coverage" refers to the amount of your code which is checked by automated testing

2 years ago 0 0 1 0
Advertisement

mirror.xyz/apeworx.eth/caqyeWaMPu_0...

2 years ago 0 0 1 0

Code Coverage Explained

Ever wonder wtf "Coverage" is and why ppl keep talking about it?

Well we just released the 1st part of our series on coverage and we'll take you through it so you can be a better dev and not waste time on stuff you don't need

2 years ago 4 3 1 0

*wipes brow*

Aaaand that's it! Stay tuned for the coverage post, more updates, and what we've been doing at #EthCC!

If you wanna chat a bit, feel free to hit up our discord, we'd love to hang out and help with whatever you're making:

https://discord.com/invite/apeworx

2 years ago 0 0 0 0

feat: improved error message for ArgumentsLengthError

Small fix, great fix.

We made error feedback just that little bit better

2 years ago 0 0 1 0

Configure your dependencies, compilers, and projects in any way you like! This gives you so much control you can comb through and tweak every single thing imaginable without hassle!

2 years ago 0 0 1 0

feat: support global ape-config.yaml files

This one is really cool

Before this update: Only per-project config files

After this update: Global + per-user config files!

2 years ago 0 0 1 0

feat: extra settings for dependencies

You can now use compiler settings config for dependencies!

A small feature, but great feature for handling those annoying PUSH0-related issues

2 years ago 0 0 1 0

feat: EIP-5202 blueprint support with API method

Here's the head Ape explaining why this one is so cool

twitter.com/fubuloubu/status/1677436...

2 years ago 0 0 1 0

feat: ability to see constructor transaction traces and gas

With this you'll be able to see traces for contract deployments waaaay better

2 years ago 0 0 1 0

Basically, it saves you 30 gas for free! No questions asked

But also it allows Ape to detect this subtle varient of ERC-1167 proxies and what the real interface is for the code, since the proxy just forwards to it's implementation

2 years ago 0 0 1 0
Advertisement

feat: detect solady push0 minimal proxies

This is a really cool one made by the Yearn bunnylord himself,
@bantg

It's special type of proxy that was made from ERC-1167 proxies with the new PUSH0 opcode, which was only added recently

2 years ago 0 0 1 0

feat: ape pm compile for all dependencies and prevent failing on first dependency during compile

And the brother of the PRs. When you compile dependencies they now happen in parallel vs series so you get a clear view of all the errors

Dependency management has never been easier

2 years ago 0 0 1 0

feat: --include-dependencies flag for ape compile command and setting

This is the sister PR to the previous one. You can now force recompile your dependencies alongside customising them!

2 years ago 0 0 1 0

feat: ape pm CLI commands

Work, alter, and compile dependencies separately from your own project + install whatever you like thats not listed in your Ape config!

Add customisation to your customisation to your customisation!

2 years ago 0 0 1 0

feat: coverage

Alright so this one is so big we're devoting a whole blog to it, so stay tuned! We'll go into depth about everything coverage and how Ape makes it easier than ever!

2 years ago 0 0 1 0

NEW APE RELEASE!

Ape 0.6.12 + 0.6.13 - 2-for-1

GM anon. We have Special thanks to @bantg and @antazoey for these new features and fixes!

https://twitter.com/bantg/status/1677413493593591808

If you want to ask anything about ape, feel free to join our discord! http://discord.com/invite/apeworx

2 years ago 1 0 1 0

Thank you to everyone who joined and asked questions! If you want to catch the next AMA, feel free to join our Discord!

https://discord.com/invite/apeworx

2 years ago 0 0 0 0
Advertisement

52 min: Doggie details some advanced plans we have for chaosnet and we wrap up the AMA

2 years ago 0 0 1 0

46:40 min: z80 answers an audience question about the #chainlink price feed bot that cHaOSneT uses and how to customise it for your specific use case

2 years ago 0 0 1 0

45 min: We answer a question by @Mylife4thehorde about using RPC infrastructure such as Treble and gas optimisations for Vyper in ApePay

2 years ago 0 0 1 0

44 min: Fubu gives an overview of all our products and what you can use right now

2 years ago 0 0 1 0

41 min: Fubu details how ApePay's unique streaming payments feature makes it simple to replace traditional payment services like Paypal or Stripe in a safe and transparent way

2 years ago 0 0 1 0