Annyce Davis

Davis Technology Consulting

  • Home
  • About Me
  • Blog
  • Courses
  • Newsletter

Bash Scripting for Flutter Tests and Code Coverage Reports

March 19, 2019 by Annyce Davis

Do you have a development task that is mostly a series of commands? Do you have to perform that task on a regular basis? If so, a script might be just what you need. Over the years I’ve wanted to learn bash scripting several times. Yet there’s always something else that takes priority and my desire to script takes a back seat. Not any more!

I finally decided to start learning how to write bash scripts and I want to share it with you in case you’d like to do the same. At the bottom of this post, I’ve listed several resources that I’m using to help me on this journey. If you’re an Android developer, you can use Gradle to handle many automated tasks. If you want to learn about Gradle on Android or how to create a Gradle plugin, check out my course here.

On to the script. It does the following:

  • Runs the unit and widget tests for a Flutter application
  • Generates a code coverage report
  • Removes the unwanted files from the coverage output
  • Converts the coverage data to HTML
  • Opens the HTML page in your browser

I’m going to break down what each section of the script does so that you can start having fun creating your own scripts! (This post assumes you are already familiar with programming and related concepts.)

Continue Reading

Using awk on the Command Line to Parse Files

April 22, 2011 by Annyce Davis

I needed to format a file that contained a list of words with their accompanying definitions.  I didn’t need the definitions and wanted to put an ‘item’ tag around each word.  awk to the rescue!

The Command:
awk '{print ""$1""}' < words.xml
I have this stored in the words.xml file:
BAD something bad
BAG to put into a bag
BAH intj. expressing disgust
BAL type of shoe (balmoral)
BAM to strike with a dull sound
BAN to prohibit/Rumanian coin
After running the command, I get:
<item>BAD</item>
<item>BAG</item>
<item>BAH</item>
<item>BAL</item>
<item>BAM</item>
<item>BAN</item>
Thanks awk!

top Command Line Tool

January 13, 2010 by Annyce Davis

Recently I have been introduced to the top command line tool. This tool is very useful in viewing the top processes running on a machine and their CPU and Memory usage. I have included a screen shot of the top command’s output.

Some useful options are the i option which allows you to toggle back and forth between viewing and not viewing idle processes.

And the M option which allows you to sort the processes by memory usage.

Unix History Command

August 13, 2009 by Annyce Davis

In order to save myself from painstakingly typing the same commands over and over again I invested a little time in learning about the Unix history command. One workflow that I have found very useful is the following:

!vi – repeats the last vi command that I typed (apply this to any command)
!! – repeats the last command that I typed

history – prints out the entire history with the associated number for each command
example:
100 – vi info.txt
101 – mv info.txt noinfo.txt

history > myhistory.txt – this will store the contents of my history in a file for later reference

Using the information derived from history I can then do the following:
!100 – this will perform the command vi info.txt
more !:$ – this will take the first argument of the last command and perform a new command on it. So in this instance I will essentially have more info.txt.

Amazing stuff, hunh!

Next Page »

Follow Me

  • Bluesky

Categories

  • Android (60)
  • Career (5)
  • Communication (4)
  • Flutter (1)
  • Git (4)
  • Gradle (4)
  • Grails (23)
  • iOS (1)
  • Java (8)
  • JavaScript (6)
  • Kotlin (17)
  • Life (5)
  • Public Speaking (26)
  • Revenue (2)
  • RxJava (1)
  • Software Development (13)
  • Twitter (3)
  • Uncategorized (11)
  • Video Course (5)

Follow Me

  • Bluesky

Copyright © 2025 · All Rights Reserved · Log in