| RUN: rm -rf %t |
| RUN: mkdir %t |
| |
| # Make some empty objects. |
| RUN: llvm-cas --cas %t/cas --make-node \ |
| RUN: --data - </dev/null >%t/empty.casid |
| |
| RUN: llvm-cas --cas %t/cas --cat-node-data @%t/empty.casid |\ |
| RUN: FileCheck %s -check-prefix CHECK-EMPTY -allow-empty |
| RUN: llvm-cas --cas %t/cas --ls-node-refs @%t/empty.casid |\ |
| RUN: FileCheck %s -check-prefix CHECK-EMPTY -allow-empty |
| CHECK-EMPTY-NOT: {{.}} |
| |
| # Make a complex object, which references existing ones. Reference a blob and |
| # other objects, and reference one of them twice to be sure they don't get |
| # deduped. |
| RUN: llvm-cas --cas %t/cas --make-blob --data /dev/null \ |
| RUN: >%t/empty-blob.casid |
| RUN: cat %t/empty.casid %t/empty.casid %t/empty-blob.casid \ |
| RUN: >%t/complex.refs |
| RUN: cat %t/complex.refs | sed -e 's,^.,CHECK: ,' > %t/complex.check |
| RUN: llvm-cas --cas %t/cas --make-node \ |
| RUN: --data %S/Inputs/oneline @%t/complex.refs \ |
| RUN: >%t/complex.casid |
| RUN: llvm-cas --cas %t/cas --cat-node-data \ |
| RUN: @%t/complex.casid | FileCheck %s -check-prefix COMPLEX-DATA |
| RUN: llvm-cas --cas %t/cas --ls-node-refs @%t/complex.casid |\ |
| RUN: FileCheck %t/complex.check |
| COMPLEX-DATA: content |
| |
| RUN: llvm-cas --cas %t/cas --validate-object @%t/complex.casid |
| |
| # Import from a new CAS. |
| RUN: llvm-cas --cas %t/new-cas --upstream-cas %t/cas --import @%t/complex.casid |
| RUN: llvm-cas --cas %t/new-cas --cat-node-data \ |
| RUN: @%t/complex.casid | FileCheck %s -check-prefix COMPLEX-DATA |
| RUN: llvm-cas --cas %t/new-cas --validate |