umm-csci-systems / git-bats-demo Goto Github PK
View Code? Open in Web Editor NEWA simple demo repo demonstrating the use of git and the bats bash testing tool.
License: MIT License
A simple demo repo demonstrating the use of git and the bats bash testing tool.
License: MIT License
v1.0.1 fails due to changes in GitHub land, but v1.2.0 appears to work.
The solution is currently full of brew
/MacOS versions of commands like gwc
instead of just wc
. I need to change those to be just the "standard" versions.
Once I have the write-up updated (#11) , then I should remake the video that goes with this.
The original video had 6 parts that ran almost 2.5 hours viewing time. That's arguably way too long. The question, then, is whether I try "winging" it again, or if I write a script. The script will take more up-front time, but might shrink the video and make it more likely that people actually watch it.
I think I'll try doing the first part of two with a script as an experiment, and then see how long that takes to write, and how much it affects the resulting video.
I've got lots of scribbles on the write-up that need to be entered. Some are just editing, but others come from switching to bats-core
.
There are oceans of Markdown Lint warnings that I really need to clean up.
There are a variety of "common problems" that students have with the Log Processing lab. It would be nice if this example (and the video) illustrated some "best practices" that might help with that.
Some things that immediately come to mind:
touch output.txt
; I/O redirection will create the file for you (e.g., command > output.txt
).It looks like creating copies of repos via GitHub's template mechanism eats some important info about git
sub-modules, and you're forced to re-add any templates by hand, which sucks.
Forking works, but I think that if you're using GitHub Classroom you have to use templates, so this is bit of a problem.
I sent the GitHub folks a question on this, and we'll see what (if anything) we get back.
https://dev.to/afrodevgirl/replacing-master-with-main-in-github-2fjf
Make sure to update any existing pull requests as well.
testing/README.md
actually has the best info on this for many cases.
This should have at least two actions:
shellcheck
is happyI should do this before updating to bats-core
so I get the shellcheck
validation as I go through that.
shellcheck
It would be useful to let folks know that both shellcheck
exists and would be a good thing to apply to their shell scripts.
In thinking about the Command line introduction lab I'm thinking that a better way to deal with this would be to allow the temporary scratch directory to be specified via an optional command line argument. If no directory is specified, then we use mktemp
to create the directory, otherwise we use the specified directory.
I don't really know what the difference is, and how templates affect forking (if at all). I need to read up on that and figure out if this repo should be a template or note.
I need to update the solution to clear a ton of shellcheck
warnings, and to make sure that the tests pass and the badges update correctly.
I currently have a pointer in "Setting up the repo" to the first Software Design lab's git
/GitHub resources. I need to move that into a new "documentation" repo and update the link here.
I need to update the bats
tests to use the new bats-core
implementation. This shouldn't affect the write-up (or videos) much since the way the tests will run won't won't change much from the user's perspective. Some of the output will be different, but that's about it.
I should add GitHub Actions (#5) first, as that will give me shellcheck
checking as I make changes to the test script.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.