On 05/06/2019 01:13 PM, Minwoo Im wrote: >> I wasn't clear enough. >> >> It doesn't check for the return value for now. What needs to happen is :- >> >> 1. Get rid of the variable strings which are not part of the discovery >> log page entries such as Generation counter. >> 2. Validate each log page entry content. > > Question again here. > Do you mean that log page entry contents validation should be in bash > level instead of *.out comparison? It has *out level comparison. > >> 3. Check the return value. > > nvme-cli is currently returning value like: > > 0 : failed with nvme status code (but the actual value may not be > the same with status) > == 0 : done successfully > < 0 : failed with -errno > > But, ( > 0) case may be removed from nvme-cli soon due to [1] discuss. > Anyway, if nvme-cli is going to return 0 for both cases: success, error > with nvme status, then test case is going to be hard to check the error > status by a return value. This should not happen as it will break existing scripts which are written on the top the nvme-cli in past few years. It should be with output string parsing which > would be great if it's going to be commonized. > No, we cannot rely on the output string as this problem is a good example. I'm not sure returning == 0 for error case is a good idea. Checking return value prevents us from writing unstable testcases which are bases on the text output and allow us to modify tools as specification moves forward. > [1] https://github.com/linux-nvme/nvme-cli/pull/492 >