github에서 대용량 파일(100M 이상)은 지원하지 않고

50~100MB는 경고를 띄운다고 하는데

그 이상의 용량을 git에서 관리하려면 git lfs를 설치해주어야 한다고 한다.

 

[링크 : https://newsight.tistory.com/330]

'프로그램 사용 > Version Control' 카테고리의 다른 글

git 저장소 합치기 해보았으나..  (0) 2021.04.07
git 특정 디렉토리만 clone 하기  (0) 2021.04.07
git submodule  (0) 2021.04.05
git reset revert  (0) 2021.03.31
git error: RPC failed; curl ... remote end hung up  (0) 2021.01.11
Posted by 구차니
프로그램 사용/cunit2021. 4. 6. 11:31

테스트에 따른 include 파일

#include <CUnit/Automated.h>
void         CU_automated_run_tests(void)

#include <CUnit/Basic.h>
CU_ErrorCode    CU_basic_run_tests(void)

#include <CUnit/Console.h>
void CU_console_run_tests(void)

#include <CUnit/CUCurses.h>
void CU_curses_run_tests(void)

[링크 : http://cunit.sourceforge.net/doc/running_tests.html]

[링크 : https://sharpis0826.blogspot.com/2013/11/cunit-cunit_17.html]

 

ncurse로 멋지게 나오는걸 기대했는데 현실은 에러! 빌드도 안됨 ㅋ

/usr/bin/ld: /tmp/ccIbfUYB.o: in function `main':
cunit.c:(.text+0x314): undefined reference to `CU_curses_run_tests'
collect2: error: ld returned 1 exit status

 

아무튼.. ncurse는 다른 패키지로 분리되어 있고.. include도 다른걸로 해주어야 하니 급 귀찮..

$ apt-cache search cunit
libcunit1 - Unit Testing Library for C
libcunit1-dev - Unit Testing Library for C -- development files
libcunit1-doc - Unit Testing Library for C -- documentation
libcunit1-ncurses - Unit Testing Library for C (ncurses)
libcunit1-ncurses-dev - Unit Testing Library for C (ncurses) -- development files

 

CU_basic_run_tests()

결과를 화면으로 출력함

$ ./a.out


     CUnit - A unit testing framework for C - Version 2.1-3
     http://cunit.sourceforge.net/


Suite: Suite_1
  Test: test of fprintf() ...passed
  Test: test of fread() ...passed

Run Summary:    Type  Total    Ran Passed Failed Inactive
              suites      1      1    n/a      0        0
               tests      2      2      2      0        0
             asserts      5      5      5      0      n/a

Elapsed time =    0.001 seconds

 

CU_automated_run_tests()

결과를 XML로 출력함

$ ls -al
합계 36
drwxrwxr-x  2 minimonk minimonk  4096  4월  6 11:37 .
drwxrwxr-x 13 minimonk minimonk  4096  4월  6 11:01 ..
-rwxrwxr-x  1 minimonk minimonk 17488  4월  6 11:37 a.out
-rw-rw-r--  1 minimonk minimonk  3734  4월  6 11:37 cunit.c
-rw-rw-r--  1 minimonk minimonk     9  4월  6 11:37 temp.txt

$ ./a.out

$ ls -al
합계 40
drwxrwxr-x  2 minimonk minimonk  4096  4월  6 11:37 ./
drwxrwxr-x 13 minimonk minimonk  4096  4월  6 11:01 ../
-rw-rw-r--  1 minimonk minimonk  1670  4월  6 11:37 CUnitAutomated-Results.xml
-rwxrwxr-x  1 minimonk minimonk 17488  4월  6 11:37 a.out*
-rw-rw-r--  1 minimonk minimonk  3734  4월  6 11:37 cunit.c
-rw-rw-r--  1 minimonk minimonk     9  4월  6 11:37 temp.txt

$ cat CUnitAutomated-Results.xml
<?xml version="1.0" ?>
<?xml-stylesheet type="text/xsl" href="CUnit-Run.xsl" ?>
<!DOCTYPE CUNIT_TEST_RUN_REPORT SYSTEM "CUnit-Run.dtd">
<CUNIT_TEST_RUN_REPORT>
  <CUNIT_HEADER/>
  <CUNIT_RESULT_LISTING>
    <CUNIT_RUN_SUITE>
      <CUNIT_RUN_SUITE_SUCCESS>
        <SUITE_NAME> Suite_1 </SUITE_NAME>
        <CUNIT_RUN_TEST_RECORD>
          <CUNIT_RUN_TEST_SUCCESS>
            <TEST_NAME> test of fprintf() </TEST_NAME>
          </CUNIT_RUN_TEST_SUCCESS>
        </CUNIT_RUN_TEST_RECORD>
        <CUNIT_RUN_TEST_RECORD>
          <CUNIT_RUN_TEST_SUCCESS>
            <TEST_NAME> test of fread() </TEST_NAME>
          </CUNIT_RUN_TEST_SUCCESS>
        </CUNIT_RUN_TEST_RECORD>
      </CUNIT_RUN_SUITE_SUCCESS>
    </CUNIT_RUN_SUITE>
  </CUNIT_RESULT_LISTING>
  <CUNIT_RUN_SUMMARY>
    <CUNIT_RUN_SUMMARY_RECORD>
      <TYPE> Suites </TYPE>
      <TOTAL> 1 </TOTAL>
      <RUN> 1 </RUN>
      <SUCCEEDED> - NA - </SUCCEEDED>
      <FAILED> 0 </FAILED>
      <INACTIVE> 0 </INACTIVE>
    </CUNIT_RUN_SUMMARY_RECORD>
    <CUNIT_RUN_SUMMARY_RECORD>
      <TYPE> Test Cases </TYPE>
      <TOTAL> 2 </TOTAL>
      <RUN> 2 </RUN>
      <SUCCEEDED> 2 </SUCCEEDED>
      <FAILED> 0 </FAILED>
      <INACTIVE> 0 </INACTIVE>
    </CUNIT_RUN_SUMMARY_RECORD>
    <CUNIT_RUN_SUMMARY_RECORD>
      <TYPE> Assertions </TYPE>
      <TOTAL> 5 </TOTAL>
      <RUN> 5 </RUN>
      <SUCCEEDED> 5 </SUCCEEDED>
      <FAILED> 0 </FAILED>
      <INACTIVE> n/a </INACTIVE>
    </CUNIT_RUN_SUMMARY_RECORD>
  </CUNIT_RUN_SUMMARY>
  <CUNIT_FOOTER> File Generated By CUnit v2.1-3 - Tue Apr  6 11:37:15 2021
 </CUNIT_FOOTER>
</CUNIT_TEST_RUN_REPORT>

 

CU_console_run_tests()

R 누르면 CU_basic_run_tests()와 차이는 없지만 테스트 항목을 하나하나 on/off 가능하다.

$ ./a.out


     CUnit - A Unit testing framework for C - Version 2.1-3
             http://cunit.sourceforge.net/


***************** CUNIT CONSOLE - MAIN MENU ******************************
(R)un  (S)elect  (L)ist  (A)ctivate  (F)ailures  (O)ptions  (H)elp  (Q)uit
Enter command: S

--------------------- Registered Suites -----------------------------
 #  Suite Name                         Init? Cleanup? #Tests Active?

 1. Suite_1                             Yes      Yes      2     Yes
---------------------------------------------------------------------
Total Number of Suites : 1

Enter number of suite to select (1-1) : 1
Suite 'Suite_1' selected.

***************** CUNIT CONSOLE - SUITE MENU ***************************
(R)un (S)elect (L)ist (A)ctivate (F)ailures (U)p (O)ptions (H)elp (Q)uit
Enter command: L

----------------- Test List ------------------------------
Suite: Suite_1

 #  Test Name                          Active?

 1. test of fprintf()                     Yes
 2. test of fread()                       Yes
----------------------------------------------------------
Total Number of Tests : 2

***************** CUNIT CONSOLE - SUITE MENU ***************************
(R)un (S)elect (L)ist (A)ctivate (F)ailures (U)p (O)ptions (H)elp (Q)uit
Enter command: R

Running Suite : Suite_1
     Running Test : test of fprintf()
     Running Test : test of fread()

Run Summary:    Type  Total    Ran Passed Failed Inactive
              suites      1      1    n/a      0        0
               tests      2      2      2      0        0
             asserts      5      5      5      0      n/a

Elapsed time =    0.001 seconds

 

CU_curses_run_tests();

CU_console_run_tests의 ncurse 버전

               CUnit - A Unit testing framework for C - Version 2.1-3
                            http://cunit.sourceforge.net/

 Progress

 Tests Run :      0   Success :      0   Failed :      0

┌───────────────────────────────── Details Window ──────────────────────────────────┐
│Welcome to CUnit.  Press the indicated key to run the command.                     │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
│                                                                                   │
└───────────────────────────────────────────────────────────────────────────────────┘
 (R)un  (S)elect  (L)ist  (A)ctivate  (F)ailures  (O)ptions  (H)elp  (Q)uit

'프로그램 사용 > cunit' 카테고리의 다른 글

ubuntu에서 cunit  (0) 2021.04.06
CI/CD - Continuous integration continuous delivery  (0) 2021.04.05
cunit  (0) 2021.04.05
CUnit  (0) 2014.03.11
Posted by 구차니
프로그램 사용/cunit2021. 4. 6. 11:04

일단 돌려보는게 목적이니 대충 해볼까..

$ sudo apt-get install libcunit1-dev
$ gcc cunit.c -lcunit

 

실행하면 아래와 같이 결과가 나온다.

$ ./a.out


     CUnit - A unit testing framework for C - Version 2.1-3
     http://cunit.sourceforge.net/


Suite: Suite_1
  Test: test of fprintf() ...passed
  Test: test of fread() ...passed

Run Summary:    Type  Total    Ran Passed Failed Inactive
              suites      1      1    n/a      0        0
               tests      2      2      2      0        0
             asserts      5      5      5      0      n/a

Elapsed time =    0.000 seconds

[링크 : http://cunit.sourceforge.net/example.html]

[링크 : https://sharpis0826.blogspot.com/2013/11/cunit-cunit_17.html]

'프로그램 사용 > cunit' 카테고리의 다른 글

cunit test mode - auto / basic / console / ncurse  (0) 2021.04.06
CI/CD - Continuous integration continuous delivery  (0) 2021.04.05
cunit  (0) 2021.04.05
CUnit  (0) 2014.03.11
Posted by 구차니

국민은 없네 ㅠ

신한 20만원~30만원 실적 / 20만원 대중교통 2천원 할인

우리신용 30만 실적 / 월 1만원 한도 할인(할인 매출은 실적 제외)

우리체크 20~50만 / 1만 최대 캐시백

하나신용 50만 실적 / 1.5만 20% 교통 할인

하나체크 25만 실적 / 15% 캐시백, 3만 이상 이용시 5천

 

아따 조건 까다롭다 -_-

[링크 : http://www.alcard.kr/]

[링크 : http://1boon.daum.net/weekly/210305_1]

 

 

'개소리 왈왈 > 육아관련 주저리' 카테고리의 다른 글

내가 운전을 이상하게 하는건가?  (0) 2021.04.18
구리 롯데마트 3월 말 영업종료  (0) 2021.04.17
공기 청정기 구매  (0) 2021.04.04
밥솥 압력패킹 교체  (0) 2021.04.03
4월 지름의 시작  (0) 2021.04.01
Posted by 구차니
Linux API/linux2021. 4. 5. 16:44

이런 에러 처음 겪네 -_-

 

runtime DIV/0 에러에 가깝다고 해야하나..

(문제는 전부 char 형인데 뜬금없이 float point..)

[링크 : https://stackoverflow.com/questions/4236853/floating-point-exception-c-why-and-what-is-it]

[링크 : https://kldp.org/node/122753]

[링크 : https://www.acmicpc.net/board/view/21892]

 

혹시나 해서 gdb 물려서 실행해보니

Program received signal SIGFPE, Arithmetic exception.

 

이름은 Floating Point Exception 에서 유래하긴 했는데

"0으로 나누기와 오버플로우를 포함한 모든 산술에러"에서 발생한다고 한다.

Macro: int SIGFPE

The SIGFPE signal reports a fatal arithmetic error. Although the name is derived from “floating-point exception”, this signal actually covers all arithmetic errors, including division by zero and overflow. If a program stores integer data in a location which is then used in a floating-point operation, this often causes an “invalid operation” exception, because the processor cannot recognize the data as a floating-point number.

Actual floating-point exceptions are a complicated subject because there are many types of exceptions with subtly different meanings, and the SIGFPE signal doesn’t distinguish between them. The IEEE Standard for Binary Floating-Point Arithmetic (ANSI/IEEE Std 754-1985 and ANSI/IEEE Std 854-1987) defines various floating-point exceptions and requires conforming computer systems to report their occurrences. However, this standard does not specify how the exceptions are reported, or what kinds of handling and control the operating system can offer to the programmer.

[링크 : https://www.gnu.org/software/libc/manual/html_node/Program-Error-Signals.html]

'Linux API > linux' 카테고리의 다른 글

Stopped (tty input)  (0) 2021.05.21
linux gpio interrupt poll?  (0) 2021.05.04
실행파일 not fount, FATAL: kernel too old  (0) 2021.04.05
spi 통신 예제(linux)  (0) 2021.01.28
linux USB bulk 통신  (0) 2020.10.21
Posted by 구차니
프로그램 사용/cunit2021. 4. 5. 14:45

devops랑도 키워드가 같이 나오긴 한데 개발방법론은 아닌것 같고..

[링크 : https://itholic.github.io/qa-cicd/]

[링크 : https://www.redhat.com/ko/topics/devops/what-is-ci-cd]

 

You want to write a modern CUnit test compatible with common CI/CD workflows?

[링크 : https://cunity.gitlab.io/cunit/]

[링크 : https://stackify.com/what-is-cicd-whats-important-and-how-to-get-it-right/]

 

'프로그램 사용 > cunit' 카테고리의 다른 글

cunit test mode - auto / basic / console / ncurse  (0) 2021.04.06
ubuntu에서 cunit  (0) 2021.04.06
cunit  (0) 2021.04.05
CUnit  (0) 2014.03.11
Posted by 구차니

'프로그램 사용 > Version Control' 카테고리의 다른 글

git 특정 디렉토리만 clone 하기  (0) 2021.04.07
git lfs  (0) 2021.04.06
git reset revert  (0) 2021.03.31
git error: RPC failed; curl ... remote end hung up  (0) 2021.01.11
git stash  (0) 2020.01.21
Posted by 구차니
프로그램 사용/cunit2021. 4. 5. 14:36

junit도 cunit도 듣기만 하고 써보려고 하는건 처음이네..

TDD 본건 기억이 나는데..

막상 cunit 적용하려니 함수 하나하나를 설계하는게 쉽지가 않네..

 

[링크 : http://dslab.konkuk.ac.kr/class/2017/17SE/Team_Project_B/A3/201411283_유병찬.pdf]

[링크 : https://blog.naver.com/zzeun/130104823706]

[링크 : http://cunit.sourceforge.net/example.html]

[링크 : https://cunity.gitlab.io/cunit/]

'프로그램 사용 > cunit' 카테고리의 다른 글

cunit test mode - auto / basic / console / ncurse  (0) 2021.04.06
ubuntu에서 cunit  (0) 2021.04.06
CI/CD - Continuous integration continuous delivery  (0) 2021.04.05
CUnit  (0) 2014.03.11
Posted by 구차니
Linux API/linux2021. 4. 5. 10:53

빌드해서 올리는데 파일이 있는데 없다고?!?!

혹시나 해서 보는데 target에 file도 없어 ㅠㅠㅠㅠ 아놔 -_-

아무튼 

파일이 없는건

zynq> ./test
-sh: ./test: not found

zynq> ls -al /lib/ld-
ld-2.13.so     ld-linux.so.3

zynq> ls -al /lib/ld-linux.so.3
lrwxrwxrwx    1 root     root            10 Nov 27  2012 /lib/ld-linux.so.3 -> ld-2.13.so

zynq> ./test
FATAL: kernel too old
Aborted

 

/lib/ld-linux-armhf.so.3 와 /lib/ld-linux.so 의 차이 -_-

아니 저정도면 실행시에 링크파일이 없다고 에러나와줘야지 ㅠㅠ

왜 자기 자신이 없다고 에러가 나는게야!!

$ file test
test: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 4.9.0, with debug_info, not stripped

 

아무튼 빡쳐서(!) static 링크해서 빌드하고 실행했더니

$ file test
test: ELF 32-bit LSB executable, ARM, EABI5 version 1 (GNU/Linux), statically linked, for GNU/Linux 4.9.0, with debug_info, not stripped

 

야이!!!

zynq> ./test
FATAL: kernel too old
Aborted

 

에라이 걍 컴파일러 바꿔 -_-

[링크 : https://ggpapa.tistory.com/36]

[링크 : https://blog.naver.com/calb30095/221005114736]

'Linux API > linux' 카테고리의 다른 글

linux gpio interrupt poll?  (0) 2021.05.04
Floating point exception  (0) 2021.04.05
spi 통신 예제(linux)  (0) 2021.01.28
linux USB bulk 통신  (0) 2020.10.21
linux open() 과 8진법  (0) 2020.09.28
Posted by 구차니

먼길을 가서 업어옴

정말 커서 업어오다 시피함 ㅠㅠ

'개소리 왈왈 > 육아관련 주저리' 카테고리의 다른 글

구리 롯데마트 3월 말 영업종료  (0) 2021.04.17
알뜰교통카드  (2) 2021.04.05
밥솥 압력패킹 교체  (0) 2021.04.03
4월 지름의 시작  (0) 2021.04.01
맨날 피곤하고 정신없고  (0) 2021.03.30
Posted by 구차니